{ "cells": [ { "cell_type": "markdown", "id": "60244b2c", "metadata": {}, "source": [ "## Photonic crystal slab band structure calculation\n", "\n", "In this notebook, we simulate a photonic crystal slab consisting of a square lattice of air holes in a dielectric slab. Our goal is to compute the band structure of this photonic crystal slab, as found in:\n", "\n", "> Shanhui Fan and J. D. Joannopoulos, \"Analysis of guided resonances in photonic crystal slabs,\" Phys. Rev. B 65, 235112 (2002).\n", "\n", "To this end, we excite the structure with several `PointDipole` sources, and we measure the response with several `FieldTimeMonitor` monitors. We excite modes with a fixed Bloch wavevector by using Bloch boundary conditions. We then use the `ResonanceFinder` to find the resonant frequencies. By sweeping the Bloch wavevector, we obtain the full band structure of the photonic crystal slab.\n", "\n", "See also the api reference for `ResonanceFinder` [here](https://docs.flexcompute.com/projects/tidy3d/en/v1.9.0rc2/_autosummary/tidy3d.plugins.ResonanceFinder.html)." ] }, { "cell_type": "code", "execution_count": 1, "id": "193cb096", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:47.316746Z", "iopub.status.busy": "2023-02-03T05:01:47.316281Z", "iopub.status.idle": "2023-02-03T05:01:48.387709Z", "shell.execute_reply": "2023-02-03T05:01:48.387322Z" } }, "outputs": [ { "data": { "text/html": [ "
[23:01:47] WARNING  This version of Tidy3D was pip installed from the 'tidy3d-beta' repository on   __init__.py:103\n",
       "                    PyPI. Future releases will be uploaded to the 'tidy3d' repository. From now on,                \n",
       "                    please use 'pip install tidy3d' instead.                                                       \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m This version of Tidy3D was pip installed from the \u001b[32m'tidy3d-beta'\u001b[0m repository on \u001b]8;id=155674;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/__init__.py\u001b\\\u001b[2m__init__.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=358327;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/__init__.py#103\u001b\\\u001b[2m103\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m PyPI. Future releases will be uploaded to the \u001b[32m'tidy3d'\u001b[0m repository. From now on, \u001b[2m \u001b[0m\n", "\u001b[2;36m \u001b[0m please use \u001b[32m'pip install tidy3d'\u001b[0m instead. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Using client version: 1.9.0rc1                                                  __init__.py:121\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Using client version: \u001b[1;36m1.9\u001b[0m.0rc1 \u001b]8;id=472395;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/__init__.py\u001b\\\u001b[2m__init__.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=736079;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/__init__.py#121\u001b\\\u001b[2m121\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# standard python imports\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import xarray as xr\n", "\n", "import tidy3d as td\n", "from tidy3d import web\n", "from tidy3d.plugins import ResonanceFinder\n" ] }, { "cell_type": "markdown", "id": "6022fa5a", "metadata": {}, "source": [ "We will randomly position our sources and monitors. Here, we seed the random number generator to guarantee reproducible results." ] }, { "cell_type": "code", "execution_count": 2, "id": "be1a51fc", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.389564Z", "iopub.status.busy": "2023-02-03T05:01:48.389376Z", "iopub.status.idle": "2023-02-03T05:01:48.391205Z", "shell.execute_reply": "2023-02-03T05:01:48.390929Z" } }, "outputs": [], "source": [ "rng = np.random.default_rng(12345)\n" ] }, { "cell_type": "markdown", "id": "5b3da68c", "metadata": {}, "source": [ "Now we define the parameters for the simulation, structure, sources, and monitors.\n", "\n", "We take the dipole polarization to be `Hz` and the symmetry to be `(0,0,1)` in order to excite only modes which are even with respect to the xy mirror plane." ] }, { "cell_type": "code", "execution_count": 3, "id": "da1f5f85", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.392641Z", "iopub.status.busy": "2023-02-03T05:01:48.392543Z", "iopub.status.idle": "2023-02-03T05:01:48.395993Z", "shell.execute_reply": "2023-02-03T05:01:48.395719Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total runtime = 6.74 ps\n" ] } ], "source": [ "# Simulation parameters\n", "runtime_fwidth = 200.0 # in units of 1/frequency bandwidth of the source\n", "t_start_fwidth = 5.0 # time to start monitoring after source has decayed, units of 1/frequency bandwidth\n", "dPML = 1.0 # space between PhC slabs and PML, in unit of longest wavelength of interest\n", "\n", "# Structure parameters (um)\n", "a_lattice = 1 # lattice constant \"a\"\n", "r_hole = 0.2 * a_lattice # radius of the air holes\n", "t_slab = 0.5 * a_lattice # slab thickness\n", "ep_slab = 12 # dielectric constant of the slab\n", "ep_hole = 1 # dielectric constant of the holes\n", "\n", "# Frequency range of interest (Hz)\n", "freq_range_unitless = np.array((0.1, 0.43)) # in units of c/a\n", "freq_scale = (\n", " td.constants.C_0 / a_lattice\n", ") # frequency scale determined by the lattice constant\n", "freq_range = freq_range_unitless * freq_scale\n", "lambda_range = (td.constants.C_0 / freq_range[1], td.constants.C_0 / freq_range[0])\n", "\n", "# Gaussian pulse parameters\n", "freq0 = np.sum(freq_range) / 2 # central frequency\n", "freqw = 0.3 * (freq_range[1] - freq_range[0]) # pulse width\n", "\n", "# Runtime\n", "run_time = runtime_fwidth / freqw\n", "print(f\"Total runtime = {(run_time*1e12):.2f} ps\")\n", "t_start = t_start_fwidth / freqw\n", "\n", "# Simulation size\n", "spacing = dPML * lambda_range[-1] # space between PhC slabs and PML\n", "sim_size = Lx, Ly, Lz = (a_lattice, a_lattice, 2 * spacing + t_slab)\n", "\n", "# Number of k values to sample, per edge of the irreducible Brillouin zone\n", "Nk = 4\n", "\n", "# Number of dipoles and monitors\n", "num_dipoles = 7\n", "num_monitors = 2\n", "\n", "# Dipole polarization and symmetry\n", "polarization = \"Hz\"\n", "symmetry = (0, 0, 1)\n" ] }, { "cell_type": "markdown", "id": "27c57eee", "metadata": {}, "source": [ "We define the materials and structures in terms of the above parameters. We take the photonic crystal slab to be lying in the xy plane. Because the photonic crystal slab is periodic in the x and y directions, we only need to simulate a single unit cell, containing the dielectric slab and a single air hole." ] }, { "cell_type": "code", "execution_count": 4, "id": "cbcc09f9", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.397427Z", "iopub.status.busy": "2023-02-03T05:01:48.397340Z", "iopub.status.idle": "2023-02-03T05:01:48.399959Z", "shell.execute_reply": "2023-02-03T05:01:48.399715Z" } }, "outputs": [], "source": [ "mat_slab = td.Medium(permittivity=ep_slab, name=\"mat_slab\")\n", "mat_hole = td.Medium(permittivity=ep_hole, name=\"mat_hole\")\n", "\n", "slab = td.Structure(\n", " geometry=td.Box(\n", " center=(0, 0, 0),\n", " size=(td.inf, td.inf, t_slab),\n", " ),\n", " medium=mat_slab,\n", " name=\"slab\",\n", ")\n", "\n", "hole = td.Structure(\n", " geometry=td.Cylinder(\n", " center=(0, 0, 0),\n", " axis=2,\n", " radius=r_hole,\n", " length=t_slab,\n", " ),\n", " medium=mat_hole,\n", " name=\"hole\",\n", ")\n", "\n", "structures = [slab, hole]\n" ] }, { "cell_type": "markdown", "id": "dbda5f33", "metadata": {}, "source": [ "We will excite the photonic crystal slab with several `PointDipole` sources. Each dipole will have a random position and phase." ] }, { "cell_type": "code", "execution_count": 5, "id": "7cd6c4ed", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.401362Z", "iopub.status.busy": "2023-02-03T05:01:48.401282Z", "iopub.status.idle": "2023-02-03T05:01:48.405869Z", "shell.execute_reply": "2023-02-03T05:01:48.405610Z" } }, "outputs": [], "source": [ "dipole_positions = rng.uniform(\n", " [-Lx / 2, -Ly / 2, 0], [Lx / 2, Ly / 2, 0], [num_dipoles, 3]\n", ")\n", "\n", "dipole_phases = rng.uniform(0, 2 * np.pi, num_dipoles)\n", "\n", "pulses = []\n", "dipoles = []\n", "for i in range(num_dipoles):\n", " pulse = td.GaussianPulse(freq0=freq0, fwidth=freqw, phase=dipole_phases[i])\n", " pulses.append(pulse)\n", " dipoles.append(\n", " td.PointDipole(\n", " source_time=pulse,\n", " center=tuple(dipole_positions[i]),\n", " polarization=polarization,\n", " name=\"dipole_\" + str(i),\n", " )\n", " )\n" ] }, { "cell_type": "markdown", "id": "700880a7", "metadata": {}, "source": [ "We create `FieldTimeMonitors` to record the field as a function of time at several random locations within the photonic crystal slab. Crucially, we start the monitors after the source pulse has decayed." ] }, { "cell_type": "code", "execution_count": 6, "id": "bc6dca60", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.407272Z", "iopub.status.busy": "2023-02-03T05:01:48.407185Z", "iopub.status.idle": "2023-02-03T05:01:48.409629Z", "shell.execute_reply": "2023-02-03T05:01:48.409355Z" } }, "outputs": [], "source": [ "monitor_positions = rng.uniform(\n", " [-Lx / 2, -Ly / 2, 0], [Lx / 2, Ly / 2, 0], [num_monitors, 3]\n", ")\n", "\n", "monitors_time = []\n", "for i in range(num_monitors):\n", " monitors_time.append(\n", " td.FieldTimeMonitor(\n", " fields=[\"Hz\"],\n", " center=tuple(monitor_positions[i]),\n", " size=(0, 0, 0),\n", " start=t_start,\n", " name=\"monitor_time_\" + str(i),\n", " )\n", " )\n" ] }, { "cell_type": "markdown", "id": "e6939eae", "metadata": {}, "source": [ "We will perform `3*Nk` different simulations, each with different Bloch boundary conditions, as we sweep the Bloch wavevector over the boundary of the irreducible Brillouin zone. We sweep over three lines, namely $\\Gamma X$, $XM$, and $M\\Gamma$. We use a PML in the z direction.\n", "\n", "Here, we simply define all of the boundary conditions we will use and put them into a single array." ] }, { "cell_type": "code", "execution_count": 7, "id": "84ec0547", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.410972Z", "iopub.status.busy": "2023-02-03T05:01:48.410887Z", "iopub.status.idle": "2023-02-03T05:01:48.414515Z", "shell.execute_reply": "2023-02-03T05:01:48.414247Z" } }, "outputs": [], "source": [ "bspecs_gammax = []\n", "bspecs_xm = []\n", "bspecs_mgamma = []\n", "for i in range(Nk):\n", " bspecs_gammax.append(\n", " td.BoundarySpec(\n", " x=td.Boundary.bloch((1 / 2) * i / Nk),\n", " y=td.Boundary.periodic(),\n", " z=td.Boundary.pml(),\n", " )\n", " )\n", " bspecs_xm.append(\n", " td.BoundarySpec(\n", " x=td.Boundary.bloch(1 / 2),\n", " y=td.Boundary.bloch((1 / 2) * i / Nk),\n", " z=td.Boundary.pml(),\n", " )\n", " )\n", " bspecs_mgamma.append(\n", " td.BoundarySpec(\n", " x=td.Boundary.bloch((1 / 2) * (1 - i / Nk)),\n", " y=td.Boundary.bloch((1 / 2) * (1 - i / Nk)),\n", " z=td.Boundary.pml(),\n", " )\n", " )\n", "bspecs = bspecs_gammax + bspecs_xm + bspecs_mgamma\n" ] }, { "cell_type": "markdown", "id": "e80d5995", "metadata": {}, "source": [ "Now we define the simulations we want to run. " ] }, { "cell_type": "code", "execution_count": 8, "id": "0c0a8a8a", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.415791Z", "iopub.status.busy": "2023-02-03T05:01:48.415704Z", "iopub.status.idle": "2023-02-03T05:01:48.423035Z", "shell.execute_reply": "2023-02-03T05:01:48.422787Z" } }, "outputs": [], "source": [ "sims = {}\n", "for i in range(3 * Nk):\n", " sims[f\"sim_{i}\"] = td.Simulation(\n", " center=(0, 0, 0),\n", " size=sim_size,\n", " grid_spec=td.GridSpec.auto(),\n", " structures=structures,\n", " sources=dipoles,\n", " monitors=monitors_time,\n", " run_time=run_time,\n", " shutoff=0,\n", " boundary_spec=bspecs[i],\n", " normalize_index=None,\n", " symmetry=symmetry,\n", " )\n" ] }, { "cell_type": "markdown", "id": "22ff9910", "metadata": {}, "source": [ "Let's check that the structure and source look correct. The source spectrum must fill the entire frequency range of interest." ] }, { "cell_type": "code", "execution_count": 9, "id": "443a41b7", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.424363Z", "iopub.status.busy": "2023-02-03T05:01:48.424280Z", "iopub.status.idle": "2023-02-03T05:01:48.775003Z", "shell.execute_reply": "2023-02-03T05:01:48.774082Z" } }, "outputs": [ { "data": { "text/html": [ "
[23:01:48] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:48]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=302674;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=808338;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAuoAAAGGCAYAAAAtuaQaAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAABNiElEQVR4nO3deXxU1f3/8fcsmZnsIRASwg4iCCIgCEKlFI2CUAutUqVU0VKoC1qlWuGnBcWfolaRqihCtdR9+1bqVy2KCFoFQRH6QxRFBFkDxJCFLDOZmfP7AzNlspFAkrkzeT0fj/uAuXPu5HMzcO97zpx7rs0YYwQAAADAUuyRLgAAAABAdQR1AAAAwIII6gAAAIAFEdQBAAAACyKoAwAAABZEUAcAAAAsiKAOAAAAWBBBHQAAALAggjoAAABgQQR1oBmtXr1aNptNq1evjnQpAIAoxzkl9hHUgSbw2GOPaenSpZEu44Q8//zzWrBgQaTLkCQFg0Hdf//96tq1qzwej8444wy98MIL9d6+oKBA06ZNU0ZGhhITEzVy5Eh99tlnNbZ9/fXXdeaZZ8rj8ahTp06aM2eO/H5/Y+0KAJwwzimN68knn9Rpp50mj8ejHj166JFHHqn3tl6vV7feequys7MVHx+vIUOGaMWKFTW2XbNmjc455xwlJCQoKytLN9xwg44cOdKwYg2ARtenTx8zYsSIausDgYApKyszgUCg+Yuqp7Fjx5rOnTtHugxjjDEzZ840kszUqVPN4sWLzdixY40k88ILLxx320AgYIYNG2YSExPNHXfcYR599FHTu3dvk5ycbL7++uuwtm+99Zax2Wxm5MiRZvHixeb66683drvdXH311U21awBQb5xTGs+iRYuMJHPxxRebxYsXm8svv9xIMvfee2+9tr/sssuM0+k0N998s3niiSfM0KFDjdPpNP/+97/D2m3cuNF4PB4zYMAA8/jjj5vbbrvNuN1uM3r06AbVS1BHkzly5EikS4iY2g6q0cAqB9U9e/aYuLg4c91114XWBYNBM3z4cNOhQwfj9/vr3P6ll14ykswrr7wSWnfw4EGTlpZmJk6cGNa2d+/epl+/fqaioiK07rbbbjM2m818+eWXjbRHAE4G55QRkS7jhFjlnGKMMaWlpaZ169Zm7NixYesnTZpkEhMTTX5+fp3br1u3zkgyf/7zn0PrysrKTPfu3c3QoUPD2l544YWmXbt2prCwMLRuyZIlRpJ5++23610zQR31smfPHvOb3/zGtGvXzrhcLtOlSxdz9dVXG6/Xa4wx5m9/+5uRZFavXm2uueYak5GRYdLS0kLbL1y40PTu3du4XC7Trl07c+2115rDhw+H/Yyvv/7a/OIXvzCZmZnG7Xab9u3bm0svvdQUFBSE2rzzzjvmRz/6kUlNTTWJiYnm1FNPNbNmzTpu/fXZrry83MyePdt0797duFwu06FDB3PLLbeY8vLyaq/3zDPPmLPOOsvEx8ebtLQ0M3z48NB/vM6dOxtJYUvlAXbVqlVGklm1alXY67388svmzDPPNB6Px7Ru3dpMmjTJ7NmzJ6zN5MmTTWJiotmzZ48ZN26cSUxMNG3atDF/+MMfjhtajTFm2bJlZsyYMaH3sFu3bmbu3Llh244YMaJa7XUdYCdPnlytfeUyZ86c49ZUl4ULFxpJZsuWLWHrn3/+eSOpWu9FVRMmTDCZmZnVepqmTZtmEhISQu/rli1bjCSzcOHCsHZ79+41ksxdd911UvsBoDrOKeE4pxz11FNPGUnmySefDFt/9913G0nmzTffPG5ddXnzzTdrfJ01a9YYSeaZZ56pc/tbbrnFOByOsPBtjDH33HOPkWR27dpljDGmsLDQOJ1Oc8stt4S183q9JikpyUyZMqXeNTsbNlAGLdG+ffs0ePDg0HjfXr16ae/evXr11VdVWloql8sVanvttdcqIyNDs2fPVklJiSTpjjvu0J133qmcnBxdc801+uqrr/T444/rk08+0UcffaS4uDj5fD6NGjVKXq9X119/vbKysrR371698cYbKigoUGpqqrZs2aKf/vSnOuOMMzR37ly53W598803+uijj+qsvz7bBYNB/exnP9OHH36oadOm6bTTTtPmzZv10EMP6euvv9ayZctCbe+8807dcccdGjZsmObOnSuXy6V169bpvffe0wUXXKAFCxbo+uuvV1JSkm677TZJUmZmZq31LV26VFdddZXOOusszZs3TwcOHNBf/vIXffTRR9q4caPS0tJCbQOBgEaNGqUhQ4bogQce0LvvvqsHH3xQ3bt31zXXXFPn72Hp0qVKSkrSjBkzlJSUpPfee0+zZ89WUVGR/vznP0uSbrvtNhUWFmrPnj166KGHJElJSUm1vubvfvc75eTkhK1bvny5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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(1, 2, tight_layout=True, figsize=(10, 4))\n", "sims[\"sim_0\"].plot(z=0.0, ax=ax[0])\n", "sims[\"sim_0\"].plot(x=0, freq=freq0, ax=ax[1])\n", "plt.show()\n", "\n", "f, (ax1, ax2) = plt.subplots(1, 2, tight_layout=True, figsize=(8, 4))\n", "plot_time = 5 / freqw\n", "ax1 = (\n", " sims[\"sim_0\"]\n", " .sources[0]\n", " .source_time.plot(times=np.linspace(0, plot_time, 1001), ax=ax1)\n", ")\n", "ax1.lines.pop(0)\n", "ax1.lines.pop(1)\n", "ax1.set_xlim(0, plot_time)\n", "ax1.legend((\"source amplitude\",))\n", "ax2 = (\n", " sims[\"sim_0\"]\n", " .sources[0]\n", " .source_time.plot_spectrum(\n", " times=np.linspace(0, sims[\"sim_0\"].run_time, 10001), ax=ax2\n", " )\n", ")\n", "ax2.lines.pop(0)\n", "ax2.lines.pop(0)\n", "ax2.hlines(0, freq_range[0], freq_range[1], linewidth=10, color=\"g\", alpha=0.4)\n", "ax2.legend((\"source spectrum\", \"measurement\"))\n", "ax2.set_ylim(-1e-16)\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "c7983aad", "metadata": {}, "source": [ "Now we run the simulations as a `Batch`. We save " ] }, { "cell_type": "code", "execution_count": 10, "id": "70058b88", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:01:48.778881Z", "iopub.status.busy": "2023-02-03T05:01:48.778447Z", "iopub.status.idle": "2023-02-03T05:03:16.714023Z", "shell.execute_reply": "2023-02-03T05:03:16.713662Z" } }, "outputs": [ { "data": { "text/html": [ "
[23:01:49] INFO     Created task 'sim_0' with task_id '425fbe84-a204-43ca-a331-08a2bd603db7'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:49]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_0'\u001b[0m with task_id \u001b[32m'425fbe84-a204-43ca-a331-08a2bd603db7'\u001b[0m. \u001b]8;id=77897;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=792231;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fe93e6659e2643e48ec1f5d75426144d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:50] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=139557;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=364397;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Created task 'sim_1' with task_id '524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_1'\u001b[0m with task_id \u001b[32m'524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2'\u001b[0m. \u001b]8;id=198912;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=458791;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f66622a7417643119e4276080e3fafe2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:51] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=179519;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=513203;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:52] INFO     Created task 'sim_2' with task_id '8b30587b-3c92-40dd-9025-bba6f1aaddac'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:52]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_2'\u001b[0m with task_id \u001b[32m'8b30587b-3c92-40dd-9025-bba6f1aaddac'\u001b[0m. \u001b]8;id=132235;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=250088;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fc4b3b6c1f3d49ef8cdd14149ed42211",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:53] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:53]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=951801;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=345074;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Created task 'sim_3' with task_id '719b283b-13c3-44e0-8b76-fa952db89bbf'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_3'\u001b[0m with task_id \u001b[32m'719b283b-13c3-44e0-8b76-fa952db89bbf'\u001b[0m. \u001b]8;id=915429;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=977459;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f861494b7a9c4051aaaedb9fe696dd89",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:54] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:54]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=41003;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=536242;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Created task 'sim_4' with task_id '2059db83-e7cb-4486-81f5-dcc111ee48a1'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_4'\u001b[0m with task_id \u001b[32m'2059db83-e7cb-4486-81f5-dcc111ee48a1'\u001b[0m. \u001b]8;id=611310;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=318140;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a2739e972a884e8587967a967bbd24fb",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:55] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:55]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=199299;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=164199;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Created task 'sim_5' with task_id '0f5ed6f3-cc9c-43e3-b3d5-dc83d60e194f'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_5'\u001b[0m with task_id \u001b[32m'0f5ed6f3-cc9c-43e3-b3d5-dc83d60e194f'\u001b[0m. \u001b]8;id=361119;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=429437;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fe1f026d29f84dd69a7870e13762acca",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:56] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:56]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=154835;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=86883;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:57] INFO     Created task 'sim_6' with task_id 'e74e7171-af37-47ac-b584-8e92cbfa37ca'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:57]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_6'\u001b[0m with task_id \u001b[32m'e74e7171-af37-47ac-b584-8e92cbfa37ca'\u001b[0m. \u001b]8;id=569553;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=848645;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "18ccbaef4b2b440fb2bb09f3377f938f",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:58] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=528627;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=177814;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Created task 'sim_7' with task_id 'a941d525-dced-4a28-b46c-a1be17570ff8'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_7'\u001b[0m with task_id \u001b[32m'a941d525-dced-4a28-b46c-a1be17570ff8'\u001b[0m. \u001b]8;id=231967;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=615874;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "de98ea6b35144a1193691be1e3516f19",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:01:59] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:01:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=9782;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=41694;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Created task 'sim_8' with task_id 'feb89d62-370a-4b44-b7ff-c506d4249796'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_8'\u001b[0m with task_id \u001b[32m'feb89d62-370a-4b44-b7ff-c506d4249796'\u001b[0m. \u001b]8;id=844924;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=149843;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7e48e609d6e3416e9bcd23c5de5576ba",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:02:00] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:02:00]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=781859;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=541825;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:02:01] INFO     Created task 'sim_9' with task_id '4a0fcb9a-a192-4b3b-bfbd-365b6e26881d'.         webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:02:01]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_9'\u001b[0m with task_id \u001b[32m'4a0fcb9a-a192-4b3b-bfbd-365b6e26881d'\u001b[0m. \u001b]8;id=105844;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=629510;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "d5135e9c18f34cb1a88b7e847dab4c90",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=146999;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=215177;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:02:02] INFO     Created task 'sim_10' with task_id '6c6dc262-ecd4-4b4b-abc3-d1b4899fb3e1'.        webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:02:02]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_10'\u001b[0m with task_id \u001b[32m'6c6dc262-ecd4-4b4b-abc3-d1b4899fb3e1'\u001b[0m. \u001b]8;id=616199;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=587063;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "86658bcc8920427dbdf4fca4d5a6d0c9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:02:03] INFO     Auto meshing using wavelength 3.7736 defined from sources.                     grid_spec.py:510\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:02:03]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m3.7736\u001b[0m defined from sources. \u001b]8;id=806504;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=376080;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#510\u001b\\\u001b[2m510\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:02:04] INFO     Created task 'sim_11' with task_id '0898cac9-d357-4895-bd29-e0da91946906'.        webapi.py:120\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:02:04]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Created task \u001b[32m'sim_11'\u001b[0m with task_id \u001b[32m'0898cac9-d357-4895-bd29-e0da91946906'\u001b[0m. \u001b]8;id=358454;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=861266;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fa5f1018de6d4f15b69be423f3d457e7",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:02:10] Started working on Batch.                                                               container.py:361\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:02:10]\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch. \u001b]8;id=944711;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/container.py\u001b\\\u001b[2mcontainer.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=449691;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/container.py#361\u001b\\\u001b[2m361\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "da65089784ef4783955264f64214c930",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:16] Batch complete.                                                                         container.py:382\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:16]\u001b[0m\u001b[2;36m \u001b[0mBatch complete. \u001b]8;id=75146;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/container.py\u001b\\\u001b[2mcontainer.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=833728;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/container.py#382\u001b\\\u001b[2m382\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# initialize a batch and run them all\n", "batch = td.web.Batch(simulations=sims)\n", "\n", "# run the batch and store all of the data in the `data/` dir.\n", "batch_data = batch.run(path_dir=\"data\")\n" ] }, { "cell_type": "markdown", "id": "c865c155", "metadata": {}, "source": [ "Now that the simulations are complete, we can analyze the data. Let's first look at one of the FieldTimeMonitors to make sure the source has decayed." ] }, { "cell_type": "code", "execution_count": 11, "id": "4a97628f-c2d1-4e2f-82f2-ba97d88fe48e", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:03:17.417842Z", "iopub.status.busy": "2023-02-03T05:03:17.417763Z", "iopub.status.idle": "2023-02-03T05:03:19.441657Z", "shell.execute_reply": "2023-02-03T05:03:19.441405Z" } }, "outputs": [ { "data": { "text/html": [ "
[23:03:17] INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:17]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=171158;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=197;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "658eb468dd1a4688a94353cce5f05eaa",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:19] INFO     loading SimulationData from data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:19]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2\u001b[0m.hdf5 \u001b]8;id=528923;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=282983;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     loading SimulationData from data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2\u001b[0m.hdf5 \u001b]8;id=348530;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=786154;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "Text(0, 0.5, 'Hz')" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(\n", " batch_data[\"sim_1\"].monitor_data[\"monitor_time_0\"].Hz.t,\n", " np.real(batch_data[\"sim_1\"].monitor_data[\"monitor_time_0\"].Hz.squeeze()),\n", ")\n", "plt.title(\"FieldTimeMonitor data\")\n", "plt.xlabel(\"t\")\n", "plt.ylabel(\"Hz\")\n" ] }, { "cell_type": "markdown", "id": "21bc59dc-0163-432b-9cf0-5c2d2617ef35", "metadata": {}, "source": [ "We see that the source has mostly decayed by the time we switch on the monitors, and the remaining data shows decay and oscillation due to the resonances inside the system.\n", "\n", "Looking at the Fourier transform of this data, we can see resonances at the band frequencies." ] }, { "cell_type": "code", "execution_count": 12, "id": "e1b95adb-1ea6-40cb-ba63-ef5ac60de470", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:03:19.451411Z", "iopub.status.busy": "2023-02-03T05:03:19.451337Z", "iopub.status.idle": "2023-02-03T05:03:19.532499Z", "shell.execute_reply": "2023-02-03T05:03:19.532252Z" } }, "outputs": [ { "data": { "text/html": [ "
           INFO     loading SimulationData from data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2\u001b[0m.hdf5 \u001b]8;id=776741;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=358405;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     loading SimulationData from data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2\u001b[0m.hdf5 \u001b]8;id=348338;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=132454;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "Text(0, 0.5, 'Amplitude')" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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/Px85OfnS8sZGRkPf4FERCSL0rPMmIdILo9MC1FUVBROnTqFNWvWWLoqmDt3Ltzc3KRPQECApatERER3GT6YkZGI5PFIBKIJEyZg48aN2LlzJ2rVqiWt9/X1RUFBAdLS0gzKJycnw9fXVypz/6yzkuUHlXF1dTVqHQKA6dOnIz09XfpcuXLloa+RiIjkxzxEcrFoIBJCYMKECfjxxx+xY8cOBAYGGmwPDg6Gra0ttm/fLq07d+4cEhMTERoaCgAIDQ3FyZMncfPmTalMTEwMXF1d0aRJE6lM6WOUlCk5xv20Wi1cXV0NPkRE9GhgBiJzsOgYoqioKKxatQo///wzXFxcpDE/bm5ucHBwgJubG8aMGYMpU6bAw8MDrq6umDhxIkJDQ9G+fXsAQI8ePdCkSRMMHz4c8+bNQ1JSEt59911ERUVBq9UCAF599VV89tlnePvttzF69Gjs2LEDa9euxaZNmyx27UREVDXsJiNzsGgL0dKlS5Geno4uXbrAz89P+kRHR0tlFi1ahGeffRYDBw5Ep06d4Ovrix9++EHartFosHHjRmg0GoSGhuIf//gHRowYgTlz5khlAgMDsWnTJsTExKBly5ZYsGABli9fjoiIiGq9XiIikhezEcnlkXoO0aOKzyEiInp07Dx3E6NWHAQA7H6rC+rUcLJwjehRpdjnEBERET2QwSwzy1WDHi8MREREpFjMQyQXBiIiIlIUgwczsomIZMJAREREisIMRObAQERERIrFbERyYSAiIiJFERxUTWbAQERERIoiKlgiqioGIiIiUiy2EJFcGIiIiEhRSs8sYx4iuTAQERERkdVjICIiIkUp3SrELjOSCwMREREpisEsM3aakUwYiIiISLHYQkRyYSAiIiKFKf3qDgtWgx4rDERERKQo7DIjc2AgIiIiIqvHQERERIrCWWZkDgxERESkKAxBZA4MREREpFgMRyQXBiIiIlKU0gOpOaia5MJAREREimIwy4x5iGTCQERERERWj4GIiIgURZTzNdHDYCAiIiJFEUKU+TXRw2AgIiIixWIcIrkwEBERkWKxgYjkwkBERESKYhiCmIhIHgxEREREZPUYiIiISFEMHszIBiKSCQMREREpisGDGS1XDXrMMBAREZFisYWI5MJAREREimL46g4mIpIHAxERESkKn1RN5sBARERERFaPgYiIiBTF8NUd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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df = 1 / np.amax(batch_data[\"sim_1\"].monitor_data[\"monitor_time_0\"].Hz.t)\n", "minn = int(freq_range[0] / df)\n", "maxn = int(freq_range[1] / df)\n", "spectrum = np.fft.fft(batch_data[\"sim_1\"].monitor_data[\"monitor_time_0\"].Hz.squeeze())\n", "plt.plot(\n", " np.linspace(freq_range[0], freq_range[1], maxn - minn),\n", " np.abs(spectrum[::-1][minn:maxn]),\n", ")\n", "plt.title(\"Spectrum at single wavevector\")\n", "plt.xlabel(\"Frequency (Hz)\")\n", "plt.ylabel(\"Amplitude\")\n" ] }, { "cell_type": "markdown", "id": "663c96ba-8b16-4056-9983-bef38e7a5c9a", "metadata": {}, "source": [ "We use the ResonanceFinder plugin to find the band frequencies.\n", "\n", "We first construct a `ResonanceFinder` object storing our parameters, and then call `run()` on our list of `FieldTimeData` objects. This will add up the signals from all of the monitors before searching for resonances. The `ResonanceFinder` class has additional methods in case the signal takes another form; see the api reference [here](https://docs.flexcompute.com/projects/tidy3d/en/v1.9.0rc2/_autosummary/tidy3d.plugins.ResonanceFinder.html).\n", "\n", "The `run()` method returns an `xr.Dataset` containing the decay rate, Q factor, amplitude, phase, and estimation error for each resonance as a function of frequency. " ] }, { "cell_type": "code", "execution_count": 13, "id": "7496ef10-068e-41ce-8907-418bbcd60e26", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:03:19.534085Z", "iopub.status.busy": "2023-02-03T05:03:19.534000Z", "iopub.status.idle": "2023-02-03T05:03:20.324743Z", "shell.execute_reply": "2023-02-03T05:03:20.324230Z" } }, "outputs": [ { "data": { "text/html": [ "
           INFO     loading SimulationData from data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2\u001b[0m.hdf5 \u001b]8;id=397529;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=265950;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=867334;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=870867;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:20] INFO             Completed ResonanceFinder (nfreqs = 5)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:20]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m5\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=690016;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=716356;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
decayQamplitudephaseerror
freq
9.788253e+137.430813e+11413.8268650.0083321.6563880.000041
1.061235e+149.529783e+103498.4726290.0373523.0544790.000009
1.131265e+142.128035e+12167.0073220.0389651.6954350.000051
1.191562e+141.150597e+12325.3443320.022350-2.1337750.000034
1.372927e+141.121520e+12384.5830680.031599-0.7072540.000053
\n", "
" ], "text/plain": [ " decay Q amplitude phase error\n", "freq \n", "9.788253e+13 7.430813e+11 413.826865 0.008332 1.656388 0.000041\n", "1.061235e+14 9.529783e+10 3498.472629 0.037352 3.054479 0.000009\n", "1.131265e+14 2.128035e+12 167.007322 0.038965 1.695435 0.000051\n", "1.191562e+14 1.150597e+12 325.344332 0.022350 -2.133775 0.000034\n", "1.372927e+14 1.121520e+12 384.583068 0.031599 -0.707254 0.000053" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resonance_finder = ResonanceFinder(freq_window=tuple(freq_range))\n", "resonance_data = resonance_finder.run(signals=batch_data[\"sim_1\"].data)\n", "resonance_data.to_dataframe()\n" ] }, { "cell_type": "markdown", "id": "46db3d3c", "metadata": {}, "source": [ "We see the four resonances from the previous figure. All four have reasonable Q factors, amplitudes, and errors, so they are likely to represent physical resonances. Note that in order to accurately obtain the Q factor for high-Q modes, it may be necessary to run the simulation for a longer time.\n", "\n", "Now we are ready to compute the band structure. We run the resonance finder at every Bloch wavevector." ] }, { "cell_type": "code", "execution_count": 14, "id": "4afe673e", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:03:20.327892Z", "iopub.status.busy": "2023-02-03T05:03:20.327655Z", "iopub.status.idle": "2023-02-03T05:03:50.334645Z", "shell.execute_reply": "2023-02-03T05:03:50.334018Z" } }, "outputs": [ { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/425fbe84-a204-43ca-a331-08a2bd603db7.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=946940;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=10779;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/425fbe84-a204-43ca-a331-08a2bd603db7.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "373f833ec80f4ed0ac0bd813f0140190",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:22] INFO     loading SimulationData from data/425fbe84-a204-43ca-a331-08a2bd603db7.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:22]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m425fbe84-a204-43ca-a331-08a2bd603db7\u001b[0m.hdf5 \u001b]8;id=434474;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=562957;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=633915;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=465478;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Iterated ResonanceFinder (nfreqs = 3)                                  resonance.py:203\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Iterated ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m3\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=835426;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=454499;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#203\u001b\\\u001b[2m203\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Completed ResonanceFinder (nfreqs = 3)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m3\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=292849;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=258475;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     loading SimulationData from data/524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m524d39cf-9f84-4f05-9d5c-f8d13bd6b5c2\u001b[0m.hdf5 \u001b]8;id=286360;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=735490;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:23] INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:23]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=798079;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=859086;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Completed ResonanceFinder (nfreqs = 5)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m5\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=567877;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=445938;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:24] INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/8b30587b-3c92-40dd-9025-bba6f1aaddac.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:24]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=496236;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=264611;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/8b30587b-3c92-40dd-9025-bba6f1aaddac.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ab351bf354d5499a9e151ccc4af672fb",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:25] INFO     loading SimulationData from data/8b30587b-3c92-40dd-9025-bba6f1aaddac.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:25]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m8b30587b-3c92-40dd-9025-bba6f1aaddac\u001b[0m.hdf5 \u001b]8;id=215656;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=17467;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=196198;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=266067;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:26] INFO             Completed ResonanceFinder (nfreqs = 6)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:26]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m6\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=8196;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=12553;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/719b283b-13c3-44e0-8b76-fa952db89bbf.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=60938;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=702221;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/719b283b-13c3-44e0-8b76-fa952db89bbf.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7b5783a030c54bd7ba3e0b1b84b894f4",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:28] INFO     loading SimulationData from data/719b283b-13c3-44e0-8b76-fa952db89bbf.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:28]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m719b283b-13c3-44e0-8b76-fa952db89bbf\u001b[0m.hdf5 \u001b]8;id=363095;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=424275;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=572779;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=92042;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:29] INFO             Completed ResonanceFinder (nfreqs = 6)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:29]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m6\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=519771;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=384110;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/2059db83-e7cb-4486-81f5-dcc111ee48a1.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=357210;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=759401;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/2059db83-e7cb-4486-81f5-dcc111ee48a1.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "bf5f82299a1143b5b0f85c22878f4362",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:30] INFO     loading SimulationData from data/2059db83-e7cb-4486-81f5-dcc111ee48a1.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:30]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m2059db83-e7cb-4486-81f5-dcc111ee48a1\u001b[0m.hdf5 \u001b]8;id=619069;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=199534;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=464243;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=89909;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:31] INFO             Completed ResonanceFinder (nfreqs = 6)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:31]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m6\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=272508;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=570488;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/0f5ed6f3-cc9c-43e3-b3d5-dc83d60e194f.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=837828;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=104186;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/0f5ed6f3-cc9c-43e3-b3d5-dc83d60e194f.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "8d68297af68543468bbd2e56203d9d2d",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:33] INFO     loading SimulationData from data/0f5ed6f3-cc9c-43e3-b3d5-dc83d60e194f.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:33]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m0f5ed6f3-cc9c-43e3-b3d5-dc83d60e194f\u001b[0m.hdf5 \u001b]8;id=170081;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=561464;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=343414;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=418327;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:34] INFO             Iterated ResonanceFinder (nfreqs = 5)                                  resonance.py:203\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Iterated ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m5\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=418100;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=604737;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#203\u001b\\\u001b[2m203\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Completed ResonanceFinder (nfreqs = 5)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m5\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=20247;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=180993;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/e74e7171-af37-47ac-b584-8e92cbfa37ca.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=302178;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=882915;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/e74e7171-af37-47ac-b584-8e92cbfa37ca.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "298ccdd72d224259b0636ad1d0cce945",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:36] INFO     loading SimulationData from data/e74e7171-af37-47ac-b584-8e92cbfa37ca.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:36]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93me74e7171-af37-47ac-b584-8e92cbfa37ca\u001b[0m.hdf5 \u001b]8;id=533715;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=485841;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=999579;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=648136;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:37] INFO             Iterated ResonanceFinder (nfreqs = 4)                                  resonance.py:203\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:37]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Iterated ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m4\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=369026;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=947726;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#203\u001b\\\u001b[2m203\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Completed ResonanceFinder (nfreqs = 4)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m4\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=354840;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=628239;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/a941d525-dced-4a28-b46c-a1be17570ff8.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=377086;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=153267;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/a941d525-dced-4a28-b46c-a1be17570ff8.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7624bdbab83e48f88647ca7bc346987a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:39] INFO     loading SimulationData from data/a941d525-dced-4a28-b46c-a1be17570ff8.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93ma941d525-dced-4a28-b46c-a1be17570ff8\u001b[0m.hdf5 \u001b]8;id=453343;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=171683;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=948348;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=981167;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Completed ResonanceFinder (nfreqs = 4)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m4\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=70423;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=119326;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/feb89d62-370a-4b44-b7ff-c506d4249796.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=705908;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=179379;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/feb89d62-370a-4b44-b7ff-c506d4249796.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "dac5f20ef7b04279b466cfcd21d52610",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:41] INFO     loading SimulationData from data/feb89d62-370a-4b44-b7ff-c506d4249796.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:41]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93mfeb89d62-370a-4b44-b7ff-c506d4249796\u001b[0m.hdf5 \u001b]8;id=157859;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=818917;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=404867;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=240581;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:42] INFO             Completed ResonanceFinder (nfreqs = 3)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:42]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m3\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=241977;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=448293;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/4a0fcb9a-a192-4b3b-bfbd-365b6e26881d.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=426113;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=766437;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/4a0fcb9a-a192-4b3b-bfbd-365b6e26881d.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0c119b9a035447efb37e92e847f460b2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:44] INFO     loading SimulationData from data/4a0fcb9a-a192-4b3b-bfbd-365b6e26881d.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m4a0fcb9a-a192-4b3b-bfbd-365b6e26881d\u001b[0m.hdf5 \u001b]8;id=112594;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=724586;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=909011;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=731737;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:45] INFO             Completed ResonanceFinder (nfreqs = 5)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:45]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m5\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=571799;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=89192;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/6c6dc262-ecd4-4b4b-abc3-d1b4899fb3e1.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=663719;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=818729;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/6c6dc262-ecd4-4b4b-abc3-d1b4899fb3e1.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a79cde4524f545c2a9e956e905852768",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:46] INFO     loading SimulationData from data/6c6dc262-ecd4-4b4b-abc3-d1b4899fb3e1.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m6c6dc262-ecd4-4b4b-abc3-d1b4899fb3e1\u001b[0m.hdf5 \u001b]8;id=730547;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=446811;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=615525;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=353767;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:47] INFO             Completed ResonanceFinder (nfreqs = 6)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:47]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m6\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=995927;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=709640;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     downloading file \"output/monitor_data.hdf5\" to                                    webapi.py:593\n",
       "                    \"data/0898cac9-d357-4895-bd29-e0da91946906.hdf5\"                                               \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=157884;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=67444;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#593\u001b\\\u001b[2m593\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/0898cac9-d357-4895-bd29-e0da91946906.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": [
       "\u001b[?25l"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "5250812daf6c45f2adc8b24de28a1b86",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n", "\u001b[?25h" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:49] INFO     loading SimulationData from data/0898cac9-d357-4895-bd29-e0da91946906.hdf5        webapi.py:415\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:49]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/\u001b[93m0898cac9-d357-4895-bd29-e0da91946906\u001b[0m.hdf5 \u001b]8;id=83338;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=985377;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#415\u001b\\\u001b[2m415\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO             Running ResonanceFinder (nfreqs = 200)                                 resonance.py:187\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Running ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m200\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=465024;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=356909;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#187\u001b\\\u001b[2m187\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[23:03:50] INFO             Completed ResonanceFinder (nfreqs = 6)                                 resonance.py:201\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[23:03:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Completed ResonanceFinder \u001b[1m(\u001b[0mnfreqs = \u001b[1;36m6\u001b[0m\u001b[1m)\u001b[0m \u001b]8;id=305831;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py\u001b\\\u001b[2mresonance.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=903738;file:///Users/twhughes/Documents/Flexcompute/tidy3d-docs/tidy3d/tidy3d/plugins/resonance/resonance.py#201\u001b\\\u001b[2m201\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "resonance_finder = ResonanceFinder(freq_window=tuple(freq_range))\n", "resonance_datas = []\n", "plt.figure(figsize=(10, 8))\n", "for i in range(3 * Nk):\n", " sim_data = batch_data[f\"sim_{i}\"]\n", " resonance_datas.append(resonance_finder.run(signals=sim_data.data))\n" ] }, { "cell_type": "markdown", "id": "7f48f416-be79-4c85-9dd3-36a7101dfe70", "metadata": {}, "source": [ "We define a function to filter resonances based on their Q, amplitude, and error." ] }, { "cell_type": "code", "execution_count": 15, "id": "225f04aa-2390-456e-bcb0-395320ae4015", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:03:50.585307Z", "iopub.status.busy": "2023-02-03T05:03:50.585233Z", "iopub.status.idle": "2023-02-03T05:03:50.587146Z", "shell.execute_reply": "2023-02-03T05:03:50.586925Z" } }, "outputs": [], "source": [ "def filter_resonances(resonance_data, minQ, minamp, maxerr):\n", " resonance_data = resonance_data.where(abs(resonance_data.Q) > minQ, drop=True)\n", " resonance_data = resonance_data.where(resonance_data.amplitude > minamp, drop=True)\n", " resonance_data = resonance_data.where(resonance_data.error < maxerr, drop=True)\n", " return resonance_data\n" ] }, { "cell_type": "markdown", "id": "9398f9cc-e31c-4fc8-a8af-4fb89cee9034", "metadata": {}, "source": [ "We plot the band structure with the light line overlaid." ] }, { "cell_type": "code", "execution_count": 16, "id": "fc001a93", "metadata": { "execution": { "iopub.execute_input": "2023-02-03T05:03:50.593230Z", "iopub.status.busy": "2023-02-03T05:03:50.593118Z", "iopub.status.idle": "2023-02-03T05:03:50.801013Z", "shell.execute_reply": "2023-02-03T05:03:50.800747Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "for i in range(3 * Nk):\n", " resonance_data = resonance_datas[i]\n", " resonance_data = filter_resonances(\n", " resonance_data=resonance_data, minQ=0, minamp=0.001, maxerr=100\n", " )\n", " freqs = resonance_data.freq.to_numpy()\n", " Qs = resonance_data.Q.to_numpy()\n", " plt.scatter(np.full(len(freqs), (1 / 2) * i / Nk), freqs / 3e14, color=\"blue\")\n", "\n", "lightx = np.linspace(0, 0.5, 100)\n", "lighty1 = lightx\n", "lighty3 = (0.5 - lightx) * np.sqrt(2)\n", "\n", "plt.plot(lightx, lighty1, color=\"blue\", alpha=0.2)\n", "plt.plot(1 + lightx, lighty3, color=\"blue\", alpha=0.2)\n", "\n", "plt.ylim(0, freq_range_unitless[1])\n", "\n", "plt.title(\"Band diagram\")\n", "plt.ylabel(\"Frequency (c/a)\")\n", "plt.xlabel(\"Wavevector\")\n", "plt.xticks([0, 0.5, 1, 1.5], [\"$\\Gamma$\", \"X\", \"M\", \"$\\Gamma$\"])\n", "plt.xlim(0, 1.5)\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "3c9ac653-3d76-4588-946a-71b2db764030", "metadata": {}, "source": [ "The bandstructure we obtained matches the expected result from the paper. If we were seeing too many resonances, we could change the parameters to our filter_resonances function to eliminate the spurious ones. If we were seeing too few resonances even before filtering, we might have to change the parameters of the ResonanceFinder, for example decreasing `rcond` or increasing `init_num_freqs`. If the ResonanceFinder takes too long, we can decrease `init_num_freqs`. There can also be resonances on the light line associated with Wood's anomaly; we filter those out here based on their small amplitude." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.9" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "0c119b9a035447efb37e92e847f460b2": { "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_763d474d76ba4db49d7115da3abce520", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB3.0 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB3.0 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m3.0 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m3.0 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "17f376a782bf480595fa49fb59dc40f3": { "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 } }, "18ccbaef4b2b440fb2bb09f3377f938f": { "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_3ed0771dad774f4bb2829fc9963424fc", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "1a7f28f3ab1b42208aaa3d0349645dee": { "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 } }, "2141b9c9b15a4b809639734c27cdc8c6": { "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 } }, "298ccdd72d224259b0636ad1d0cce945": { "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_d6c6a0efe0ca4e7fae9efabb42283565", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "32bf15f693dd4629a9fc111b5d1604d7": { "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 } }, "373f833ec80f4ed0ac0bd813f0140190": { "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_ea2daa3ad9f34b90b3ef0bc2ed306f07", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.9 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.9 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.9 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.9 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "3c68fbdf1a8b41a2a5c34f1b7287b8d5": { "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 } }, "3ed0771dad774f4bb2829fc9963424fc": { "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 } }, "4b15ad2844cb457aa435dd6c355da0ae": { "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 } }, "5250812daf6c45f2adc8b24de28a1b86": { "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_ba873119d8fa44278f9fe7bc2efda3fa", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "658eb468dd1a4688a94353cce5f05eaa": { "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_3c68fbdf1a8b41a2a5c34f1b7287b8d5", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.1 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.1 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.1 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.1 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "68b791f0403245e49c788f0a71612704": { "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 } }, "7624bdbab83e48f88647ca7bc346987a": { "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_4b15ad2844cb457aa435dd6c355da0ae", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "763d474d76ba4db49d7115da3abce520": { "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 } }, "7b5783a030c54bd7ba3e0b1b84b894f4": { "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_ba3df6effe0f461a9b414de820fc98f0", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.0 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.0 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.0 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.0 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "7e48e609d6e3416e9bcd23c5de5576ba": { "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_32bf15f693dd4629a9fc111b5d1604d7", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "86658bcc8920427dbdf4fca4d5a6d0c9": { "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_98208a6de783463ebf6a50c24b27045b", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "8d68297af68543468bbd2e56203d9d2d": { "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_fe3489ecc6334e96836d2c1f5fe4148e", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.2 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.2 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.2 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.2 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "98208a6de783463ebf6a50c24b27045b": { "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 } }, "a2739e972a884e8587967a967bbd24fb": { "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_2141b9c9b15a4b809639734c27cdc8c6", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "a79cde4524f545c2a9e956e905852768": { "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_a908a3fd1b8d480cbfca4778c0294471", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.9 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.9 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.9 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.9 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "a908a3fd1b8d480cbfca4778c0294471": { "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 } }, "ab351bf354d5499a9e151ccc4af672fb": { "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_b0557d70902d47799f809c6a5ae51867", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.9 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.9 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.9 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.9 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "abaee48be2e04c5c949c3a84eff157f8": { "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 } }, "ac96117d4a39453fb1e6e42f45f83cc7": { "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 } }, "b0557d70902d47799f809c6a5ae51867": { "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 } }, "b261a9e5c4a0476fab0b537659324065": { "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 } }, "ba3df6effe0f461a9b414de820fc98f0": { "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 } }, "ba873119d8fa44278f9fe7bc2efda3fa": { "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 } }, "bf5f82299a1143b5b0f85c22878f4362": { "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_68b791f0403245e49c788f0a71612704", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 87.3%1.0/1.2 MB2.8 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━\u001b[0m \u001b[35m87.3%\u001b[0m • \u001b[32m1.0/1.2 MB\u001b[0m • \u001b[31m2.8 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "d5135e9c18f34cb1a88b7e847dab4c90": { "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_abaee48be2e04c5c949c3a84eff157f8", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "d6c6a0efe0ca4e7fae9efabb42283565": { "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 } }, "da65089784ef4783955264f64214c930": { "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_17f376a782bf480595fa49fb59dc40f3", "msg_id": "", "outputs": [ { "data": { "text/html": "
sim_0: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_1: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_2: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_3: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_4: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_5: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_6: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_7: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_8: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_9: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_10: status = success     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_11: status = postprocess ━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━━━━━  71% 0:00:23\nsim_0: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_1: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_2: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_3: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_4: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_5: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_6: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_7: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_8: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_9: status = success      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_10: status = success     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\nsim_11: status = postprocess ━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━━━━━  71% 0:00:23
\n", "text/plain": "\r\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2Ksim_0: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_1: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_2: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_3: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_4: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_5: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_6: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_7: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_8: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_9: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_10: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_11: status = postprocess \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━━━━━━━\u001b[0m \u001b[35m 71%\u001b[0m \u001b[36m0:00:23\u001b[0m\nsim_0: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_1: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_2: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_3: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_4: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_5: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_6: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_7: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_8: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_9: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_10: status = success \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_11: status = postprocess \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━━━━━━━\u001b[0m \u001b[35m 71%\u001b[0m \u001b[36m0:00:23\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "dac5f20ef7b04279b466cfcd21d52610": { "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_ac96117d4a39453fb1e6e42f45f83cc7", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.2 MB/s0:00:01\n monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━ 65.5%0.8/1.2 MB2.2 MB/s0:00:01
\n", "text/plain": "\r\u001b[2K\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.2 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;5;237m╺\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━\u001b[0m \u001b[35m65.5%\u001b[0m • \u001b[32m0.8/1.2 MB\u001b[0m • \u001b[31m2.2 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "db3453ee0920474281c26c4e75a53ad3": { "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 } }, "de98ea6b35144a1193691be1e3516f19": { "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_db3453ee0920474281c26c4e75a53ad3", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "dfe68509232d44bfb1b18582e40a6399": { "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 } }, "ea2daa3ad9f34b90b3ef0bc2ed306f07": { "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 } }, "ea7b99f381aa468ca1e560e57ddfae43": { "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 } }, "f141bf6a3fb540caa835e2a4d14b4c9c": { "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 } }, "f2e1f65b429843c691250d0dd23a8a1b": { "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 } }, "f66622a7417643119e4276080e3fafe2": { "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_ea7b99f381aa468ca1e560e57ddfae43", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "f861494b7a9c4051aaaedb9fe696dd89": { "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_f141bf6a3fb540caa835e2a4d14b4c9c", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "fa5f1018de6d4f15b69be423f3d457e7": { "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_1a7f28f3ab1b42208aaa3d0349645dee", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "fc4b3b6c1f3d49ef8cdd14149ed42211": { "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_b261a9e5c4a0476fab0b537659324065", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "fe1f026d29f84dd69a7870e13762acca": { "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_dfe68509232d44bfb1b18582e40a6399", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } }, "fe3489ecc6334e96836d2c1f5fe4148e": { "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 } }, "fe93e6659e2643e48ec1f5d75426144d": { "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_f2e1f65b429843c691250d0dd23a8a1b", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--\n simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/5.0 kB?-:--:--
\n", "text/plain": "\r\u001b[2K\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/5.0 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m" }, "metadata": {}, "output_type": "display_data" } ], "tabbable": null, "tooltip": null } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }