{ "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](../_autosummary/tidy3d.plugins.resonance.ResonanceFinder.html)." ] }, { "cell_type": "code", "execution_count": 1, "id": "193cb096", "metadata": { "tags": [] }, "outputs": [], "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.resonance 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": { "tags": [] }, "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": { "tags": [] }, "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": { "tags": [] }, "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": { "tags": [] }, "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": { "tags": [] }, "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": { "tags": [] }, "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": { "tags": [] }, "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": { "tags": [] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAuoAAAGGCAYAAAAtuaQaAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABNiElEQVR4nO3deXxU1f3/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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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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", "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), val=\"abs\", ax=ax1)\n", ")\n", "ax1.set_xlim(0, plot_time)\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), val=\"abs\", ax=ax2\n", " )\n", ")\n", "ax2.hlines(1.5e-15, freq_range[0], freq_range[1], linewidth=10, color=\"g\", alpha=0.4)\n", "ax2.legend((\"source spectrum\", \"measurement\"))\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "c7983aad", "metadata": {}, "source": [ "Now we run the simulations as a `Batch`.\n", "\n", "We set `verbose=True` to keep track of the status of the jobs in the `Batch`." ] }, { "cell_type": "code", "execution_count": 10, "id": "70058b88", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
[11:42:02] Created task 'sim_0' with task_id 'fdve-6fa2d798-495b-4972-b3fc-3cee3b67f859v1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:02]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_0'\u001b[0m with task_id \u001b[32m'fdve-6fa2d798-495b-4972-b3fc-3cee3b67f859v1'\u001b[0m. \u001b]8;id=33183;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=358107;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "50bd6e5e07304a70a21cb31ac823f0da", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:06] Created task 'sim_1' with task_id 'fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:06]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_1'\u001b[0m with task_id \u001b[32m'fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1'\u001b[0m. \u001b]8;id=729752;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=675102;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c978425056bd4197972c3512500024b6", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:09] Created task 'sim_2' with task_id 'fdve-767289f2-a3be-462f-b77a-e155f17f37a8v1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:09]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_2'\u001b[0m with task_id \u001b[32m'fdve-767289f2-a3be-462f-b77a-e155f17f37a8v1'\u001b[0m. \u001b]8;id=531884;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=95772;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "1b560604ba0c4283a9cc144f861162d0", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:11] Created task 'sim_3' with task_id 'fdve-23d277ad-39c1-42f9-85c2-39cf887e5e47v1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:11]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_3'\u001b[0m with task_id \u001b[32m'fdve-23d277ad-39c1-42f9-85c2-39cf887e5e47v1'\u001b[0m. \u001b]8;id=255641;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=831763;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c5f395db5ec942e6a98738b6b5dc7a3a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:14] Created task 'sim_4' with task_id 'fdve-7a224d9f-9b97-4fc7-92b1-1073312964cfv1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:14]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_4'\u001b[0m with task_id \u001b[32m'fdve-7a224d9f-9b97-4fc7-92b1-1073312964cfv1'\u001b[0m. \u001b]8;id=90570;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=443509;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "05978351dfa94f04a805e600b87c1b16", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:17] Created task 'sim_5' with task_id 'fdve-64eb8903-a050-443c-96a3-46b80d77221bv1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:17]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_5'\u001b[0m with task_id \u001b[32m'fdve-64eb8903-a050-443c-96a3-46b80d77221bv1'\u001b[0m. \u001b]8;id=823226;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=616854;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "cd8789992806447996d4d0b709cf5d02", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:19] Created task 'sim_6' with task_id 'fdve-8ff69772-7490-43f5-bdc7-3ecca7dd71d5v1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:19]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_6'\u001b[0m with task_id \u001b[32m'fdve-8ff69772-7490-43f5-bdc7-3ecca7dd71d5v1'\u001b[0m. \u001b]8;id=985873;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=246277;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "4f9445fccf9b44a3b5f5bf2e75378f07", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:21] Created task 'sim_7' with task_id 'fdve-b50ad591-561c-4c83-933c-9d2b29164fdcv1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:21]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_7'\u001b[0m with task_id \u001b[32m'fdve-b50ad591-561c-4c83-933c-9d2b29164fdcv1'\u001b[0m. \u001b]8;id=36709;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=221146;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "511b6f44200a4f68ab52e203304501b9", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:24] Created task 'sim_8' with task_id 'fdve-96a02be8-e74e-42e7-8f58-ff5f768addf3v1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:24]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_8'\u001b[0m with task_id \u001b[32m'fdve-96a02be8-e74e-42e7-8f58-ff5f768addf3v1'\u001b[0m. \u001b]8;id=994053;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=16228;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "a865962d96c44f3e9e438c62781a166a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:26] Created task 'sim_9' with task_id 'fdve-79417f79-693e-4a85-bd0f-4ce56b758f52v1'.           webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:26]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_9'\u001b[0m with task_id \u001b[32m'fdve-79417f79-693e-4a85-bd0f-4ce56b758f52v1'\u001b[0m. \u001b]8;id=794115;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=356041;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "1586fcce5ac64d53bab2e4901423c7a7", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:29] Created task 'sim_10' with task_id 'fdve-aa5f4604-12a0-4707-bd6d-9d52ab0b87a6v1'.          webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:29]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_10'\u001b[0m with task_id \u001b[32m'fdve-aa5f4604-12a0-4707-bd6d-9d52ab0b87a6v1'\u001b[0m. \u001b]8;id=853754;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=2901;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "1512e216983e42b59bad5f9eed62a151", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:31] Created task 'sim_11' with task_id 'fdve-64adf0a7-85df-4570-9953-7737b63bcd4cv1'.          webapi.py:139\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:31]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'sim_11'\u001b[0m with task_id \u001b[32m'fdve-64adf0a7-85df-4570-9953-7737b63bcd4cv1'\u001b[0m. \u001b]8;id=689423;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=17128;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "0a6dcce95f5f4e23af3a25354775e73f", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:42:50] Started working on Batch.                                                               container.py:402\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:42:50]\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch. \u001b]8;id=199944;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/container.py\u001b\\\u001b[2mcontainer.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=749144;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/container.py#402\u001b\\\u001b[2m402\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c5529642c9b447a1a1fb081fc7656c85", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:43:28] Batch complete.                                                                         container.py:436\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:28]\u001b[0m\u001b[2;36m \u001b[0mBatch complete. \u001b]8;id=156154;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/container.py\u001b\\\u001b[2mcontainer.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=889268;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/container.py#436\u001b\\\u001b[2m436\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# initialize a batch and run them all\n", "batch = td.web.Batch(simulations=sims, verbose=True)\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": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "1fcab91db5b14183b1815c5e80905a87", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:43:39] loading SimulationData from data/fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:39]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m08a2554a-c938-4a68-b24c-ced47b18d48c\u001b[0mv1.hdf5 \u001b]8;id=857677;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=535228;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:43:39] loading SimulationData from data/fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:39]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m08a2554a-c938-4a68-b24c-ced47b18d48c\u001b[0mv1.hdf5 \u001b]8;id=692009;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=930604;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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", "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", "plt.show()\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": {}, "outputs": [ { "data": { "text/html": [ "
[11:43:39] loading SimulationData from data/fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:39]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m08a2554a-c938-4a68-b24c-ced47b18d48c\u001b[0mv1.hdf5 \u001b]8;id=359194;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=25398;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:43:39] loading SimulationData from data/fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:39]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m08a2554a-c938-4a68-b24c-ced47b18d48c\u001b[0mv1.hdf5 \u001b]8;id=960601;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=630847;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkQAAAHHCAYAAABeLEexAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABcUklEQVR4nO3deVwU5eMH8M/uwi4gl8itqIiK94VJmHgrHlmmZakpqGkZ5i/tUL+VgpWamR1m+i1T65spamZlauKJKV4o3qGSigfggbAccu3O7w/ckXEBAWdZVj7v12tfMTPPzDwzSHx4nmeeUQiCIICIiIioBlOauwJERERE5sZARERERDUeAxERERHVeAxEREREVOMxEBEREVGNx0BERERENR4DEREREdV4DERERERU4zEQERERUY3HQEREjyWFQoGIiAiTnmPlypVQKBS4dOmSSc9DRKbHQER0z8mTJ/H888+jQYMGsLGxQd26ddGnTx8sWrTI3FVDTk4OIiIisHv3bnNXxSQ2b95s8vBCj4fr168jIiIC8fHx5q4KPWYYiIgA7N+/Hx07dsTx48cxfvx4fP3113jllVegVCrx5Zdfmrt6yMnJQWRk5GMdiCIjI2U95t27d/H+++/Lekwyv+vXryMyMpKBiGRnZe4KEFUHH3/8MZycnHD48GE4OztLtt24ccM8lXoE2dnZqFWrlrmrYVY2NjbmrgJZEP7MEFuIiAAkJiaiZcuWRmEIANzd3SXLCoUCkyZNwqpVq+Dv7w8bGxsEBAQgJibGaN9r165h7Nix8PDwgEajQcuWLbF8+XKjcrm5uYiIiEDTpk1hY2MDLy8vDBkyBImJibh06RLc3NwAAJGRkVAoFJLxMWFhYbC3t0diYiIGDBgABwcHjBw5EgDQsGFDhIWFGZ2ve/fu6N69u7i8e/duKBQKrF27FpGRkahbty4cHBzw/PPPIyMjA3l5eXjzzTfh7u4Oe3t7jBkzBnl5eQ+9r3v37sULL7yA+vXrQ6PRwMfHB1OmTMHdu3fFMmFhYVi8eLF4bw2fshw5cgQhISFwdXWFra0tfH19MXbsWEmZB8cQRUREQKFQ4MKFCwgLC4OzszOcnJwwZswY5OTkSPa9e/cuJk+eDFdXVzg4OOCZZ57BtWvXyj0uacuWLQgODkatWrXg4OCAgQMH4vTp02Xuk56eDpVKha+++kpcd+vWLSiVStSpUweCIIjrJ06cCE9PT3G5PPd5wYIFUCgUuHz5stG5Z8yYAbVajTt37ojrDh48iH79+sHJyQl2dnbo1q0b9u3bJ25fv349FAoF9uzZY3S8//73v1AoFDh16pS47p9//sHzzz8PFxcX2NjYoGPHjvj9999LvA9TpkxBw4YNodFoUK9ePYwePRq3bt3C7t278cQTTwAAxowZI/5bWblypbj/unXrEBAQAFtbW7i6uuLll1/GtWvXJOco62eGai62EBEBaNCgAWJjY3Hq1Cm0atXqoeX37NmDqKgoTJ48GRqNBt988w369euHQ4cOifunpqbiySefFAOUm5sbtmzZgnHjxkGr1eLNN98EAOh0Ojz99NPYsWMHXnrpJfzf//0fMjMzER0djVOnTqF3795YsmQJJk6ciOeeew5DhgwBALRp00asT2FhIUJCQtClSxcsWLAAdnZ2lboPc+fOha2tLaZPn44LFy5g0aJFsLa2hlKpxJ07dxAREYEDBw5g5cqV8PX1xcyZM8s83rp165CTk4OJEyeiTp06OHToEBYtWoSrV69i3bp1AIBXX30V169fR3R0NP73v/89tI43btxA37594ebmhunTp8PZ2RmXLl3Chg0bynWNw4YNg6+vL+bOnYujR49i2bJlcHd3xyeffCKWCQsLw9q1azFq1Cg8+eST2LNnDwYOHFiu4//vf/9DaGgoQkJC8MknnyAnJwdLlixBly5dcOzYMTRs2LDE/ZydndGqVSvExMRg8uTJAIC///4bCoUCaWlpOHPmDFq2bAmgKAAFBweL+5bnPg8bNgzvvvsu1q5di3feeUdy7rVr16Jv376oXbs2AGDnzp3o378/AgICMGvWLCiVSqxYsQI9e/bE3r170alTJwwcOBD29vZYu3YtunXrJjleVFQUWrZsKf4snD59Gk899RTq1q2L6dOno1atWli7di0GDx6MX375Bc899xwAICsrC8HBwTh79izGjh2LDh064NatW/j9999x9epVNG/eHLNnz8bMmTMxYcIE8R507twZQNEg9zFjxuCJJ57A3LlzkZqaii+//BL79u3DsWPHJH/wyPUzQ48RgYiEbdu2CSqVSlCpVEJQUJDw7rvvCn/99ZeQn59vVBaAAEA4cuSIuO7y5cuCjY2N8Nxzz4nrxo0bJ3h5eQm3bt2S7P/SSy8JTk5O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", "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", "plt.show()\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](../_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": {}, "outputs": [ { "data": { "text/html": [ "
[11:43:39] loading SimulationData from data/fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:39]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m08a2554a-c938-4a68-b24c-ced47b18d48c\u001b[0mv1.hdf5 \u001b]8;id=944524;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=98825;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\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.788257e+137.428270e+11413.9687410.0089602.0396370.000035
1.061235e+149.531281e+103497.9226850.028086-3.0581340.000009
1.131267e+142.127627e+12167.0395200.0369521.8009980.000046
1.191562e+141.151269e+12325.1545010.020891-2.0676340.000032
1.372965e+141.087938e+12396.4653610.022803-0.4221450.000066
\n", "
" ], "text/plain": [ " decay Q amplitude phase error\n", "freq \n", "9.788257e+13 7.428270e+11 413.968741 0.008960 2.039637 0.000035\n", "1.061235e+14 9.531281e+10 3497.922685 0.028086 -3.058134 0.000009\n", "1.131267e+14 2.127627e+12 167.039520 0.036952 1.800998 0.000046\n", "1.191562e+14 1.151269e+12 325.154501 0.020891 -2.067634 0.000032\n", "1.372965e+14 1.087938e+12 396.465361 0.022803 -0.422145 0.000066" ] }, "execution_count": 13, "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": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "4f0b387dbdbc4c2fb39dd2f7ab184998", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:43:50] loading SimulationData from data/fdve-6fa2d798-495b-4972-b3fc-3cee3b67f859v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:50]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m6fa2d798-495b-4972-b3fc-3cee3b67f859\u001b[0mv1.hdf5 \u001b]8;id=833681;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=683410;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:43:50] loading SimulationData from data/fdve-08a2554a-c938-4a68-b24c-ced47b18d48cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:43:50]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m08a2554a-c938-4a68-b24c-ced47b18d48c\u001b[0mv1.hdf5 \u001b]8;id=453605;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=909972;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "d96f5556739c4ac4b4955af492784047", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:44:00] loading SimulationData from data/fdve-767289f2-a3be-462f-b77a-e155f17f37a8v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:44:00]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m767289f2-a3be-462f-b77a-e155f17f37a8\u001b[0mv1.hdf5 \u001b]8;id=752194;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=194891;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "fe01f688321440a280c57b657d87d5fa", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:44:17] loading SimulationData from data/fdve-23d277ad-39c1-42f9-85c2-39cf887e5e47v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:44:17]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m23d277ad-39c1-42f9-85c2-39cf887e5e47\u001b[0mv1.hdf5 \u001b]8;id=964411;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=329227;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "4d1f729da4dd4c4e95895ceabf8c19bd", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:44:25] loading SimulationData from data/fdve-7a224d9f-9b97-4fc7-92b1-1073312964cfv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:44:25]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m7a224d9f-9b97-4fc7-92b1-1073312964cf\u001b[0mv1.hdf5 \u001b]8;id=476155;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=267358;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "ba4bd4599be04a4b9ea167b75b34da2d", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:44:34] loading SimulationData from data/fdve-64eb8903-a050-443c-96a3-46b80d77221bv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:44:34]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m64eb8903-a050-443c-96a3-46b80d77221b\u001b[0mv1.hdf5 \u001b]8;id=539932;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=193724;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "eee85c05d52746e693079fac474a8883", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:44:43] loading SimulationData from data/fdve-8ff69772-7490-43f5-bdc7-3ecca7dd71d5v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:44:43]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m8ff69772-7490-43f5-bdc7-3ecca7dd71d5\u001b[0mv1.hdf5 \u001b]8;id=517299;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=956085;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c6ff1a20e9994a29b03dd4a878da09d3", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:44:51] loading SimulationData from data/fdve-b50ad591-561c-4c83-933c-9d2b29164fdcv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:44:51]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93mb50ad591-561c-4c83-933c-9d2b29164fdc\u001b[0mv1.hdf5 \u001b]8;id=452806;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=320234;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "a59b441ff4374654b1a296698fba9d6f", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:45:03] loading SimulationData from data/fdve-96a02be8-e74e-42e7-8f58-ff5f768addf3v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:45:03]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m96a02be8-e74e-42e7-8f58-ff5f768addf3\u001b[0mv1.hdf5 \u001b]8;id=165577;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=848136;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "76e25431a1024ca3b4cc18190d3c5da8", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:45:13] loading SimulationData from data/fdve-79417f79-693e-4a85-bd0f-4ce56b758f52v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:45:13]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m79417f79-693e-4a85-bd0f-4ce56b758f52\u001b[0mv1.hdf5 \u001b]8;id=696604;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=433219;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "557ce633839e4c1abf015d58c36585dd", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:45:24] loading SimulationData from data/fdve-aa5f4604-12a0-4707-bd6d-9d52ab0b87a6v1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:45:24]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93maa5f4604-12a0-4707-bd6d-9d52ab0b87a6\u001b[0mv1.hdf5 \u001b]8;id=196433;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=762185;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "a7ebbe9f86fe4cf594bc5e6c444b643c", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[11:45:36] loading SimulationData from data/fdve-64adf0a7-85df-4570-9953-7737b63bcd4cv1.hdf5          webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[11:45:36]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/fdve-\u001b[93m64adf0a7-85df-4570-9953-7737b63bcd4c\u001b[0mv1.hdf5 \u001b]8;id=428288;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=980470;file:///home/casey/flex/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "resonance_finder = ResonanceFinder(freq_window=tuple(freq_range))\n", "resonance_datas = []\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": {}, "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": {}, "outputs": [ { "data": { "image/png": "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", "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.6" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "02d30f3213bf41d399396485c2167284": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "03d9dd04de4b4427bfbc5a0c5a745469": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "09a6891834b84d3bb17421848a66ef60": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "0be174f3b57f4764bc6c740e50ff43a4": { "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_4fd081bd457241e2ac3c61da675d00d4", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "0beef0ddca234d9388bcadcea5c5a298": { "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_6de29a9286a94d23821f467a9d90ea7f", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 4.9/4.9 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m4.9/4.9 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "0bfd9d308757404bad4da40400d02477": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "0e3cf40a72aa47418755b8d77e89cb5a": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "0fd1a59e1b304a9b80c6b2337a49665e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1505f2ca8be44b89947cd327c05e314c": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "18dc698b9e054987914c172d54a9ce83": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "1b549efa7abf46c0a01522a292c170ef": { "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_0fd1a59e1b304a9b80c6b2337a49665e", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 11.7 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m11.7 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "1c7f68f6636c4188af91c931c8b086bc": { "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_93a69feda79045c3aef1128010329102", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "38a3e9048b6c44e88d6fb212f3b56dd6": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "43a3397a4dba459eaf410ffe9fb6f625": { "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_1505f2ca8be44b89947cd327c05e314c", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 16.9 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m16.9 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "4417e67cbc75465c81898049a48efde0": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "4a4bbfba4ca5465d9d13050782a33f71": { "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_03d9dd04de4b4427bfbc5a0c5a745469", "msg_id": "", "outputs": [ { "data": { "text/html": "
sim_0: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_1: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_2: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_3: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_4: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_5: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_6: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_7: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_8: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_9: status = success  \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_10: status = success \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\nsim_11: status = success \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\n
\n", "text/plain": "sim_0: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_1: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_2: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_3: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_4: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_5: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_6: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_7: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_8: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_9: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_10: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\nsim_11: status = success \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "4a58e15f9a7c4571b42713ffef938ded": { "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_38a3e9048b6c44e88d6fb212f3b56dd6", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 17.0 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m17.0 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "4bdcea6bb190498993186dde3546bd13": { "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_09a6891834b84d3bb17421848a66ef60", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 16.7 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m16.7 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "4e6ecfbc9aeb4ec2abb5ffcf18fea528": { "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_4417e67cbc75465c81898049a48efde0", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "4fd081bd457241e2ac3c61da675d00d4": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "58585cbff91f4faabb6cfa0efe9f0b55": { "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_87aa3627c0964be98948f19e226e98fb", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 17.1 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m17.1 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "5d0b24e0e66f4c60a5b81fbab9131c91": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "66fb16dda6d24740a9430a0e85a8c763": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6c86d9d28a454e018b61c415d28be8dc": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "6de29a9286a94d23821f467a9d90ea7f": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "78a34517a7bd42ee82d9359061e24257": { "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_bc3893ec94dd436da5c2e852c53fb55e", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 18.4 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m18.4 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "869a1458ecdf44b691b5ae005204e27c": { "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_18dc698b9e054987914c172d54a9ce83", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 18.5 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m18.5 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "87aa3627c0964be98948f19e226e98fb": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "8810fec137264c15bdf438f102b1e62a": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "93a69feda79045c3aef1128010329102": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "96dc0f5fc1534f42a22f3fd93db34139": { "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_9aeacf0c77e0423e9cc623b9ade24ee5", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 18.3 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m18.3 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "9a51e24651064f11bfb4ea26637d8b38": { "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_af0f3dbdfe0344ed97c44bb70231cb70", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "9aeacf0c77e0423e9cc623b9ade24ee5": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "a943b27465604bc8a792de0614151225": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "aeb7a4a94e1b416c998031eddebff31a": { "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_b8a99036f0804f9d8abaf53979390f9e", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "af0f3dbdfe0344ed97c44bb70231cb70": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "b8a99036f0804f9d8abaf53979390f9e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "bc3893ec94dd436da5c2e852c53fb55e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "bd40f7e4c0ec46fa8731f84332a214e3": { "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_5d0b24e0e66f4c60a5b81fbab9131c91", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 4.9/4.9 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m4.9/4.9 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "bea5cfd0f644401984f561c4650ee9b1": { "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_66fb16dda6d24740a9430a0e85a8c763", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "c5a0f76da136490f9ffbd22483d77d92": { "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_0bfd9d308757404bad4da40400d02477", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 4.9/4.9 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m4.9/4.9 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "c5ff59eb29b74e73b2d176833acf5635": { "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_a943b27465604bc8a792de0614151225", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 13.6 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m13.6 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "ccc0b68b0b78475d9da96165cc033bb2": { "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_f8ae09fd589e47e0819e1b60f2dfc1c3", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 16.2 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m16.2 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "cfcf229bc9854891a22530f5122256b9": { "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_d348c03c3aae4bd382072435457bb872", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 9.8 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m9.8 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "d348c03c3aae4bd382072435457bb872": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "e33b198c04d74bf09546e92f5b4309a4": { "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_6c86d9d28a454e018b61c415d28be8dc", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 4.9/4.9 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m4.9/4.9 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "eb6034de84be40689ed6c085e0e8a8f3": { "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_02d30f3213bf41d399396485c2167284", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "f0f69bae04fc46bc9a3c0e897151f912": { "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_0e3cf40a72aa47418755b8d77e89cb5a", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 1.2/1.2 MB \u2022 12.5 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m1.2/1.2 MB\u001b[0m \u2022 \u001b[31m12.5 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "f8ae09fd589e47e0819e1b60f2dfc1c3": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ff1f8b5aa38342289210be76a4a88ca2": { "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_8810fec137264c15bdf438f102b1e62a", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 5.0/5.0 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m5.0/5.0 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }