{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Scattering cross-section calculation\n", "\n", "To run this notebook from your browser, click [this link](https://mybinder.org/v2/gh/flexcompute-readthedocs/tidy3d-docs/readthedocs?labpath=docs%2Fsource%2Fnotebooks%2FNear2FarSphereRCS.ipynb).\n", "\n", "This tutorial will show you how to compute the radar cross section (RCS) for a dielectric sphere by sampling scattered near fields on a closed surface surrounding the sphere, and transforming them to observation points far away.\n", "\n", "This example demonstrates the usefulness of the near field to far field transformation for reducing the simulation size needed for structures involving lots of empty space.\n", "\n", "To obtain the scattered field, we will run two simulations:\n", "* one with the sphere to compute the total near field on a closed surface around the sphere, and\n", "* one without the sphere, to compute just the incident field and subtract it from the above to get the scattered field.\n", "\n", "Then, we'll show how to use the [Near2Far](https://docs.simulation.cloud/projects/tidy3d/en/latest/_autosummary/tidy3d.plugins.Near2Far.html) feature from `Tidy3D` to compute the RCS for the sphere using the near field data." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:33.222957Z", "iopub.status.busy": "2022-07-21T20:58:33.222542Z", "iopub.status.idle": "2022-07-21T20:58:34.185065Z", "shell.execute_reply": "2022-07-21T20:58:34.184737Z" } }, "outputs": [], "source": [ "# standard python imports\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "# tidy3d imports\n", "import tidy3d as td\n", "import tidy3d.web as web" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Define Simulation Parameters\n", "\n", "We first need to define our simulation parameters and the structure." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.187174Z", "iopub.status.busy": "2022-07-21T20:58:34.187049Z", "iopub.status.idle": "2022-07-21T20:58:34.190885Z", "shell.execute_reply": "2022-07-21T20:58:34.190547Z" } }, "outputs": [], "source": [ "# radius and location of the sphere\n", "radius = 0.5\n", "center = [0, 0, 0]\n", "\n", "# permittivity of the sphere\n", "epsr = 4\n", "\n", "# free space central wavelength\n", "wavelength = (2.0 * radius) / 2.0\n", "f0 = td.C_0 / wavelength\n", "\n", "# distance between the surface of the sphere and the start of the PML layers along each cartesian direction\n", "buffer_PML = 3 * wavelength\n", "\n", "# distance between the sphere and the near field monitor along each cartesian direction\n", "buffer_mon = 1 * wavelength\n", "\n", "# Define material properties\n", "air = td.Medium(permittivity=1)\n", "diel = td.Medium(permittivity=epsr)\n", "\n", "# resolution control\n", "min_steps_per_wvl = 24\n", "\n", "# create the sphere\n", "sphere = td.Structure(geometry=td.Sphere(center=center, radius=radius), medium=diel)\n", "geometry = [sphere]\n", "\n", "# define PML layers on all sides\n", "boundary_spec = td.BoundarySpec.all_sides(boundary=td.PML())\n", "\n", "# set the domain size in x, y, and z\n", "domain_size = buffer_PML + 2 * radius + buffer_PML\n", "\n", "# construct simulation size array\n", "sim_size = (domain_size, domain_size, domain_size)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create Source\n", "\n", "For our incident field, we create a plane wave incident from below the sphere polarized in the x direction." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.192456Z", "iopub.status.busy": "2022-07-21T20:58:34.192352Z", "iopub.status.idle": "2022-07-21T20:58:34.194956Z", "shell.execute_reply": "2022-07-21T20:58:34.194719Z" } }, "outputs": [], "source": [ "# Bandwidth in Hz\n", "fwidth = f0 / 10.0\n", "\n", "# Gaussian source offset; the source peak is at time t = offset/fwidth\n", "offset = 4.\n", "\n", "# time dependence of source\n", "gaussian = td.GaussianPulse(freq0=f0, fwidth=fwidth, offset=offset)\n", "\n", "# place the source below the sphere, propagating in the +z direction\n", "source = td.PlaneWave(\n", " center=(0,0,-(radius + 3 * buffer_PML / 4)),\n", " size=(td.inf, td.inf, 0),\n", " source_time=gaussian,\n", " direction='+',\n", " pol_angle=0)\n", "\n", "# Simulation run time past the source decay (around t=2*offset/fwidth)\n", "run_time = 100 / fwidth\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create Monitor\n", "\n", "Next, we define the monitors that will capture the near field data.\n", "\n", "First, we create a [FieldMonitor](https://docs.simulation.cloud/projects/tidy3d/en/latest/_autosummary/tidy3d.FieldMonitor.html?highlight=FielDmonitor) completely enclosing the sphere.\n", "\n", "The, using the `.surfaces()` method, we can extract the 6 planar surfaces surrounding the volume and feed these to the simulation.\n", "\n", "This cuts down on the data required vs computing the full volume because only the fields on the enclosing surface are required to get the far field information." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.196376Z", "iopub.status.busy": "2022-07-21T20:58:34.196267Z", "iopub.status.idle": "2022-07-21T20:58:34.199588Z", "shell.execute_reply": "2022-07-21T20:58:34.199350Z" } }, "outputs": [], "source": [ "# create a volume monitor around the sphere\n", "mon_size = 2 * radius + 2 * buffer_mon\n", "monitor = td.FieldMonitor(\n", " center=center,\n", " size=[mon_size, mon_size, mon_size],\n", " freqs=[f0],\n", " name='near_field')\n", "\n", "# get the surface monitors associated with the volume monitor\n", "monitors = monitor.surfaces()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's also create another monitor where the fields are automatically downsampled based on given sampling rates. This is achieved by supplying the `interval_space` field, and can be useful for further reducing the amount of data that needs to be downloaded from the server, and can still lead to accurate far fields, as shown below.\n", "\n", "Here, we downsample by a factor of 2 along the x and y dimensions, and a factor of 3 along z." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.201092Z", "iopub.status.busy": "2022-07-21T20:58:34.200903Z", "iopub.status.idle": "2022-07-21T20:58:34.203459Z", "shell.execute_reply": "2022-07-21T20:58:34.203229Z" } }, "outputs": [], "source": [ "# create a volume monitor around the sphere\n", "monitor_downsampled = td.FieldMonitor(\n", " center=center,\n", " size=[mon_size, mon_size, mon_size],\n", " freqs=[f0],\n", " name='near_field_downsampled',\n", " interval_space=(2, 2, 3))\n", "\n", "# append the surface monitors associated with the downsampled volume monitor\n", "monitors += monitor_downsampled.surfaces()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create Simulation\n", "\n", "Now we can put everything together and define the two simulation classes: with the sphere to get the total field, and without the sphere to get the incident field. A uniform grid with a fixed grid size is used in both simulations to allow easily subtracting the incident field in the empty simulation from the total field in the actual simulation." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.204879Z", "iopub.status.busy": "2022-07-21T20:58:34.204750Z", "iopub.status.idle": "2022-07-21T20:58:34.209226Z", "shell.execute_reply": "2022-07-21T20:58:34.208993Z" } }, "outputs": [], "source": [ "sim = td.Simulation(\n", " size=sim_size,\n", " grid_spec = td.GridSpec.auto(min_steps_per_wvl=min_steps_per_wvl),\n", " structures=geometry,\n", " sources=[source],\n", " monitors=monitors,\n", " run_time=run_time,\n", " boundary_spec=boundary_spec\n", ")\n", "\n", "# Here, we add the sphere as an override structure for the messhing such\n", "# that the grids of the two simulations match.\n", "sim_empty = td.Simulation(\n", " size=sim_size,\n", " grid_spec = td.GridSpec.auto(\n", " min_steps_per_wvl=min_steps_per_wvl,\n", " override_structures=geometry,\n", " ),\n", " structures=[],\n", " sources=[source],\n", " monitors=monitors,\n", " run_time=run_time,\n", " boundary_spec=boundary_spec\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visualize Geometry\n", "\n", "Let's take a look and make sure everything is defined properly in both simulations." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.210660Z", "iopub.status.busy": "2022-07-21T20:58:34.210467Z", "iopub.status.idle": "2022-07-21T20:58:34.342982Z", "shell.execute_reply": "2022-07-21T20:58:34.342691Z" } }, "outputs": [ { "data": { "text/html": [ "
[16:58:34] INFO     Auto meshing using wavelength 0.5000 defined from        grid_spec.py:472\n",
       "                    sources.                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:58:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m0.5000\u001b[0m defined from \u001b]8;id=904879;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=977160;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#472\u001b\\\u001b[2m472\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m sources. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Auto meshing using wavelength 0.5000 defined from        grid_spec.py:472\n",
       "                    sources.                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m0.5000\u001b[0m defined from \u001b]8;id=993158;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=24689;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#472\u001b\\\u001b[2m472\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m sources. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
<AxesSubplot:title={'center':'cross section at y=0.00'}, xlabel='x', ylabel='z'>\n",
       "
\n" ], "text/plain": [ "\u001b[1m<\u001b[0m\u001b[1;95mAxesSubplot:\u001b[0m\u001b[1;33mtitle\u001b[0m\u001b[39m=\u001b[0m\u001b[1;39m{\u001b[0m\u001b[32m'center'\u001b[0m\u001b[39m:\u001b[0m\u001b[32m'cross section at \u001b[0m\u001b[32my\u001b[0m\u001b[32m=\u001b[0m\u001b[32m0\u001b[0m\u001b[32m.00'\u001b[0m\u001b[1;39m}\u001b[0m\u001b[39m, \u001b[0m\u001b[33mxlabel\u001b[0m\u001b[39m=\u001b[0m\u001b[32m'x'\u001b[0m\u001b[39m, \u001b[0m\u001b[33mylabel\u001b[0m\u001b[39m=\u001b[0m\u001b[32m'z'\u001b[0m\u001b[1m>\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
<Figure size 648x216 with 2 Axes>\n",
       "
\n" ], "text/plain": [ "\u001b[1m<\u001b[0m\u001b[1;95mFigure\u001b[0m\u001b[39m size 648x216 with \u001b[0m\u001b[1;36m2\u001b[0m\u001b[39m Axes\u001b[0m\u001b[1m>\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(9, 3))\n", "sim.plot(y=0, ax=ax1);\n", "sim_empty.plot(y=0, ax=ax2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Run Simulations\n", "\n", "Now we can run both simulations over time and measure the results\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T20:58:34.345416Z", "iopub.status.busy": "2022-07-21T20:58:34.345076Z", "iopub.status.idle": "2022-07-21T21:01:36.933568Z", "shell.execute_reply": "2022-07-21T21:01:36.933138Z" } }, "outputs": [ { "data": { "text/html": [ "
           INFO     Using Tidy3D credentials from stored file                      auth.py:74\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Using Tidy3D credentials from stored file \u001b]8;id=96238;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/auth.py\u001b\\\u001b[2mauth.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=363437;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/auth.py#74\u001b\\\u001b[2m74\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[16:58:36] INFO     Uploaded task 'sphereRCS' with task_id                      webapi.py:120\n",
       "                    'bbf7e59c-af10-4d19-a5b8-c1b35e2ecec8'.                                  \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:58:36]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Uploaded task \u001b[32m'sphereRCS'\u001b[0m with task_id \u001b]8;id=800684;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=646311;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m'bbf7e59c-af10-4d19-a5b8-c1b35e2ecec8'\u001b[0m. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c174af01aadf4f60b5a86235e1a78241", "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": [ "
[16:58:39] INFO     status = queued                                             webapi.py:253\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:58:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = queued \u001b]8;id=315374;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=473330;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#253\u001b\\\u001b[2m253\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "89341975a0664b1f9b4f0ed4e920321a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[16:58:44] INFO     Maximum flex unit cost: 0.53                                webapi.py:244\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:58:44]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Maximum flex unit cost: \u001b[1;36m0.53\u001b[0m \u001b]8;id=909181;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=749449;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#244\u001b\\\u001b[2m244\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[16:58:46] INFO     status = preprocess                                         webapi.py:265\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:58:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = preprocess \u001b]8;id=704727;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=203675;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#265\u001b\\\u001b[2m265\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": [
       "
[16:58:56] INFO     starting up solver                                          webapi.py:269\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:58:56]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m starting up solver \u001b]8;id=386604;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=703881;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#269\u001b\\\u001b[2m269\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[16:59:07] INFO     running solver                                              webapi.py:275\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[16:59:07]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m running solver \u001b]8;id=641513;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=205564;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#275\u001b\\\u001b[2m275\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "69bde709ee5442cfa19958d29c235698", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:00:21] INFO     early shutoff detected, exiting.                            webapi.py:286\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:21]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m early shutoff detected, exiting. \u001b]8;id=289213;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=348287;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#286\u001b\\\u001b[2m286\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     status = postprocess                                        webapi.py:292\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = postprocess \u001b]8;id=180269;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=727210;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#292\u001b\\\u001b[2m292\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "5a2e5a16f57b4459a984a96dd930a272", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:00:31] INFO     status = success                                            webapi.py:298\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:31]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = success \u001b]8;id=663966;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=627993;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#298\u001b\\\u001b[2m298\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": [
       "
           INFO     downloading file \"output/monitor_data.hdf5\" to              webapi.py:574\n",
       "                    \"data/sphereRCS.hdf5\"                                                    \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=244042;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=62419;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#574\u001b\\\u001b[2m574\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/sphereRCS.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "1812ca98daf540649780558a00f9ac16", "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": [ "
[17:00:38] INFO     loading SimulationData from data/sphereRCS.hdf5             webapi.py:398\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:38]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/sphereRCS.hdf5 \u001b]8;id=816523;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=986822;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#398\u001b\\\u001b[2m398\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Auto meshing using wavelength 0.5000 defined from        grid_spec.py:472\n",
       "                    sources.                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m0.5000\u001b[0m defined from \u001b]8;id=659450;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=933472;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#472\u001b\\\u001b[2m472\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m sources. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:00:40] INFO     Uploaded task 'sphereRCS_empty' with task_id                webapi.py:120\n",
       "                    '02b2120e-1822-40cf-a8ad-bcfeda11cdba'.                                  \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:40]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Uploaded task \u001b[32m'sphereRCS_empty'\u001b[0m with task_id \u001b]8;id=973833;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=374644;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#120\u001b\\\u001b[2m120\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m'02b2120e-1822-40cf-a8ad-bcfeda11cdba'\u001b[0m. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "608a71ecf0d2437ba74d73a73897e4cf", "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": [ "
[17:00:43] INFO     status = queued                                             webapi.py:253\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:43]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = queued \u001b]8;id=491881;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=132344;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#253\u001b\\\u001b[2m253\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "4ca868381d6245028645d97784562b41", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:00:46] INFO     Maximum flex unit cost: 0.53                                webapi.py:244\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:46]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Maximum flex unit cost: \u001b[1;36m0.53\u001b[0m \u001b]8;id=521861;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=971340;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#244\u001b\\\u001b[2m244\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:00:50] INFO     status = preprocess                                         webapi.py:265\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:50]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = preprocess \u001b]8;id=607628;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=897211;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#265\u001b\\\u001b[2m265\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": [
       "
[17:00:59] INFO     starting up solver                                          webapi.py:269\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:00:59]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m starting up solver \u001b]8;id=847473;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=119158;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#269\u001b\\\u001b[2m269\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:01:10] INFO     running solver                                              webapi.py:275\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:01:10]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m running solver \u001b]8;id=217338;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=97725;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#275\u001b\\\u001b[2m275\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "60d0a5a134e74fbb8f5994cb898129c9", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:01:16] INFO     early shutoff detected, exiting.                            webapi.py:286\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:01:16]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m early shutoff detected, exiting. \u001b]8;id=6554;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=851360;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#286\u001b\\\u001b[2m286\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
\n",
       "
\n" ], "text/plain": [ "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     status = postprocess                                        webapi.py:292\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = postprocess \u001b]8;id=718872;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=691030;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#292\u001b\\\u001b[2m292\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "bdbdf981530946fd88ba4a69f4555e6d", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[17:01:28] INFO     status = success                                            webapi.py:298\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:01:28]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m status = success \u001b]8;id=718052;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=955367;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#298\u001b\\\u001b[2m298\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": [
       "
[17:01:29] INFO     downloading file \"output/monitor_data.hdf5\" to              webapi.py:574\n",
       "                    \"data/sphereRCS_empty.hdf5\"                                              \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:01:29]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m downloading file \u001b[32m\"output/monitor_data.hdf5\"\u001b[0m to \u001b]8;id=235588;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=647110;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#574\u001b\\\u001b[2m574\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m \u001b[32m\"data/sphereRCS_empty.hdf5\"\u001b[0m \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "2d81f6160e494f208f7fa084043ad9c5", "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": [ "
[17:01:36] INFO     loading SimulationData from data/sphereRCS_empty.hdf5       webapi.py:398\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:01:36]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m loading SimulationData from data/sphereRCS_empty.hdf5 \u001b]8;id=717022;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=276537;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/web/webapi.py#398\u001b\\\u001b[2m398\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Auto meshing using wavelength 0.5000 defined from        grid_spec.py:472\n",
       "                    sources.                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m0.5000\u001b[0m defined from \u001b]8;id=590610;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=611179;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#472\u001b\\\u001b[2m472\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m sources. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           INFO     Auto meshing using wavelength 0.5000 defined from        grid_spec.py:472\n",
       "                    sources.                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m0.5000\u001b[0m defined from \u001b]8;id=360203;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=634518;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#472\u001b\\\u001b[2m472\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m sources. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Run simulation\n", "import tidy3d.web as web\n", "\n", "sim_data = web.run(sim, task_name='sphereRCS', path='data/sphereRCS.hdf5')\n", "sim_empty_data = web.run(sim_empty, task_name='sphereRCS_empty', path='data/sphereRCS_empty.hdf5')\n", "\n", "# compute scattered fields by subtracting out the incident fields from the empty simulation\n", "for mon in monitors:\n", " sim_data.monitor_data[mon.name].Ex -= sim_empty_data[mon.name].Ex\n", " sim_data.monitor_data[mon.name].Ey -= sim_empty_data[mon.name].Ey\n", " sim_data.monitor_data[mon.name].Ez -= sim_empty_data[mon.name].Ez\n", "\n", " sim_data.monitor_data[mon.name].Hx -= sim_empty_data[mon.name].Hx\n", " sim_data.monitor_data[mon.name].Hy -= sim_empty_data[mon.name].Hy\n", " sim_data.monitor_data[mon.name].Hz -= sim_empty_data[mon.name].Hz" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Setting Up Near2Far\n", "\n", "To set up the near-to-far transformation, we need to grab the fields on each surface of the near-field [FieldMonitor](https://docs.simulation.cloud/projects/tidy3d/en/latest/_autosummary/tidy3d.FieldMonitor.html) objects.\n", "\n", "So, we simply create a [Near2Far](https://docs.simulation.cloud/projects/tidy3d/en/latest/_autosummary/tidy3d.plugins.Near2Far.html) object and pass in the surface monitors as shown below. Note that we also need to pass the normal directions of each of the monitors in the list.\n", "\n", "In addition to storing the near field data, this object will compute he surface currents and provide various methods for projecting the far field quantities.\n", "\n", "We can optionally pass in the number of points per wavelength in the background medium with which to sample fields on the monitors. The default is 10 points per wavelength.\n", "\n", "One can also pass in coordinates for the local origin of the set of monitors; the far-field observation points will be defined with respect to this origin. By default, the local origin is set to the average of the centers of all surface monitors passed in.\n", "\n", "To see the usefulness of downsampling the fields recorded on monitors, we'll also run the near-to-far transformation with downsampled fields to compare the RCS." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T21:01:38.113706Z", "iopub.status.busy": "2022-07-21T21:01:38.113601Z", "iopub.status.idle": "2022-07-21T21:01:38.116393Z", "shell.execute_reply": "2022-07-21T21:01:38.116151Z" }, "scrolled": true }, "outputs": [], "source": [ "from tidy3d.plugins import Near2Far\n", "\n", "n2f = Near2Far.from_surface_monitors(\n", " sim_data=sim_data, \n", " monitors=monitors[0:6], # only supply the non-downsampled surface monitors as sources\n", " normal_dirs=['-','+','-','+','-','+'], \n", " frequency=f0, \n", " pts_per_wavelength=10\n", ")\n", "\n", "n2f_downsampled = Near2Far.from_surface_monitors(\n", " sim_data=sim_data, \n", " monitors=monitors[6:], # only supply the downsampled surface monitors as sources\n", " normal_dirs=['-','+','-','+','-','+'], \n", " frequency=f0, \n", " pts_per_wavelength=10\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Getting Far Field Data\n", "\n", "After the `Near2Far` object is initialized, each of its surface surface currents are computed.\n", "\n", "Then, we just need to call one of its methods to get a far field quantity.\n", "\n", "For this example, we use `Near2Far.radar_cross_section(theta,phi)` to get the RCS at a `theta,phi` point relative to the center of the original monitor.\n", "\n", "Note that this can be set or verified using the `Near2Far.origin` attribute." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T21:01:38.117695Z", "iopub.status.busy": "2022-07-21T21:01:38.117527Z", "iopub.status.idle": "2022-07-21T21:01:38.119458Z", "shell.execute_reply": "2022-07-21T21:01:38.119217Z" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "origin at (0.0, 0.0, 0.0)\n" ] } ], "source": [ "print(f'origin at {n2f.origin}')" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T21:01:38.120691Z", "iopub.status.busy": "2022-07-21T21:01:38.120462Z", "iopub.status.idle": "2022-07-21T21:01:39.780541Z", "shell.execute_reply": "2022-07-21T21:01:39.780236Z" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
[17:01:38] INFO     Auto meshing using wavelength 0.5000 defined from        grid_spec.py:472\n",
       "                    sources.                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[17:01:38]\u001b[0m\u001b[2;36m \u001b[0m\u001b[34mINFO \u001b[0m Auto meshing using wavelength \u001b[1;36m0.5000\u001b[0m defined from \u001b]8;id=288774;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py\u001b\\\u001b[2mgrid_spec.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=722950;file:///home/shashwat/flexcompute/repositories/tidy3d-docs/tidy3d/tidy3d/components/grid/grid_spec.py#472\u001b\\\u001b[2m472\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m sources. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "0aba84678d0641bbaccf240631706c89", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "372550b9043f429992fdef0daf9825f1", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "4933f8e9d3624e939dcaa6cac65a5338", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "b57a15013790467c9f53012d7a778834", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "bcad67d67e664c1e88e9377892ed7945", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "7b619bcc04f647d99d0deae53b336599", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "b54d74e30ddb4641ba96cf029cfd5888", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "0e86ce2b1594408caabaf60b08dcd77d", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "c62aadec47a04c9eb7cc5a813b121662", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "6c080c798a0c4382b3dc681ee24e6b66", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "fcd6afc6a22a4c4d81cf01a0b171e24c", "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": { "application/vnd.jupyter.widget-view+json": { "model_id": "daa53e99201d47b9ae6e7dfec560693d", "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" } ], "source": [ "far_distance = 100 * wavelength\n", "\n", "num_theta = 300\n", "num_phi = 2\n", "thetas = np.linspace(0, np.pi, num_theta)\n", "phis = np.linspace(0, np.pi/2, num_phi)\n", "\n", "# get the RCS for the original and downsampled case\n", "RCS = n2f.radar_cross_section(thetas, phis).values\n", "RCS_downsampled = n2f_downsampled.radar_cross_section(thetas, phis).values" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plot Results\n", "Now we can plot the RCS and compare it to the analytical RCS computed via the Mie series.\n", "\n", "The results match quite well, but there are some errors due to approximations inherent to the near field to far field transformation.\n", "\n", "Notice that the downsampled monitors also yield fairly accurate results with less than an eighth of the data." ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2022-07-21T21:01:39.818925Z", "iopub.status.busy": "2022-07-21T21:01:39.818821Z", "iopub.status.idle": "2022-07-21T21:01:40.161072Z", "shell.execute_reply": "2022-07-21T21:01:40.160684Z" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
<Figure size 540x360 with 1 Axes>\n",
       "
\n" ], "text/plain": [ "\u001b[1m<\u001b[0m\u001b[1;95mFigure\u001b[0m\u001b[39m size 54\u001b[0m\u001b[1;36m0x360\u001b[0m\u001b[39m with \u001b[0m\u001b[1;36m1\u001b[0m\u001b[39m Axes\u001b[0m\u001b[1m>\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "text/html": [ "
<Figure size 540x360 with 1 Axes>\n",
       "
\n" ], "text/plain": [ "\u001b[1m<\u001b[0m\u001b[1;95mFigure\u001b[0m\u001b[39m size 54\u001b[0m\u001b[1;36m0x360\u001b[0m\u001b[39m with \u001b[0m\u001b[1;36m1\u001b[0m\u001b[39m Axes\u001b[0m\u001b[1m>\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def to_db(val):\n", " val = val / np.max(np.abs(val))\n", " return 10.0*np.log10(val)\n", "\n", "RCS_phi0 = np.squeeze(RCS[:,0])\n", "RCS_phi90 = np.squeeze(RCS[:,1])\n", "\n", "RCS_downsampled_phi0 = np.squeeze(RCS_downsampled[:,0])\n", "RCS_downsampled_phi90 = np.squeeze(RCS_downsampled[:,1])\n", "\n", "# ------ import analytical data from disk ------\n", "\n", "mie_file_id = '2lambda_epsr4'\n", "mie_filename_phi0 = \"./data/mie_bRCS_phi0_\" + mie_file_id + \".txt\"\n", "mie_filename_phi90 = \"./data/mie_bRCS_phi90_\" + mie_file_id + \".txt\"\n", "\n", "mie_data_phi0 = np.loadtxt(mie_filename_phi0, delimiter='\\t', skiprows=2)\n", "mie_theta_phi0 = np.squeeze(mie_data_phi0[:,[0]])\n", "mie_phi0 = np.squeeze(mie_data_phi0[:,[1]])\n", "\n", "mie_data_phi90 = np.loadtxt(mie_filename_phi90, delimiter='\\t', skiprows=2)\n", "mie_theta_phi90 = np.squeeze(mie_data_phi90[:,[0]])\n", "mie_phi90 = np.squeeze(mie_data_phi90[:,[1]])\n", "\n", "# ------ plot for phi = 0 ------\n", "\n", "fig, ax = plt.subplots(figsize=(7.5, 5))\n", "\n", "ax.plot(mie_theta_phi0, to_db(mie_phi0), '-k', label=\"$\\\\phi = 0$, Mie\")\n", "ax.plot(thetas, to_db(RCS_phi0), '--.b', label=\"$\\\\phi = 0$, near2far\")\n", "ax.plot(thetas, to_db(RCS_downsampled_phi0), '--r', label=\"$\\\\phi = 0$, near2far downsampled\")\n", "ax.set(xlabel = \"$\\\\theta$ (degrees)\",\n", " ylabel = \"Bistatic RCS (dBsm)\",\n", " yscale = 'linear',\n", " xscale = 'linear'\n", " )\n", "ax.grid(visible = True, which = 'both', axis = 'both', linewidth = 0.4)\n", "plt.legend(loc='best', prop={'size': 14})\n", "plt.tight_layout()\n", "\n", "# ------ plot for phi = pi/2 ------\n", "\n", "fig, ax = plt.subplots(figsize=(7.5, 5))\n", "\n", "ax.plot(mie_theta_phi90, to_db(mie_phi90), '-k', label=\"$\\\\phi = \\\\pi/2$, Mie\")\n", "ax.plot(thetas, to_db(RCS_phi90), '--.b', label=\"$\\\\phi = \\\\pi/2$, near2far\")\n", "ax.plot(thetas, to_db(RCS_downsampled_phi90), '--r', label=\"$\\\\phi = \\\\pi/2$, near2far downsampled\")\n", "ax.set(xlabel = \"$\\\\theta$ (degrees)\",\n", " ylabel = \"Bistatic RCS (dBsm)\",\n", " yscale = 'linear',\n", " xscale = 'linear'\n", " )\n", "ax.grid(visible = True, which = 'both', axis = 'both', linewidth = 0.4)\n", "plt.legend(loc='best', prop={'size': 14})\n", "plt.tight_layout()\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "01779f12a2e7431bb5329b5999c93f3b": { "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 } }, "0564a30e95d5447cb86cd41aa9fd3a86": { "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 } }, "09914b174f1f4b52854122cfeb25814f": { "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 } }, "0aba84678d0641bbaccf240631706c89": { "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_9d62a484249b44eca9e5b7ade9541996", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_x-'... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_x-'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "0b7945fb83b54c3797ed2a6b5e92585e": { "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 } }, "0e86ce2b1594408caabaf60b08dcd77d": { "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_01779f12a2e7431bb5329b5999c93f3b", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_downsampled_x+'... ━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_downsampled_x+'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "1812ca98daf540649780558a00f9ac16": { "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_e9075b5ac1ab4596bc655c1da204be09", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸ 98.7%19.3/19.5 MB3.6 MB/s0:00:01\n
\n", "text/plain": "\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m \u001b[35m98.7%\u001b[0m • \u001b[32m19.3/19.5 MB\u001b[0m • \u001b[31m3.6 MB/s\u001b[0m • \u001b[36m0:00:01\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "2d81f6160e494f208f7fa084043ad9c5": { "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_45f60c2b8b6c4542a7b671618de8d261", "msg_id": "", "outputs": [ { "data": { "text/html": "
 monitor_data.hdf5 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100.0%19.5/19.5 MB3.7 MB/s0:00:00\n
\n", "text/plain": "\u001b[1;32m↓\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100.0%\u001b[0m • \u001b[32m19.5/19.5 MB\u001b[0m • \u001b[31m3.7 MB/s\u001b[0m • \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "345acedbdbef4f4ab5a4aff16a0b697e": { "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 } }, "36571bea683a4ba58e0ee556680dc0f0": { "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 } }, "372550b9043f429992fdef0daf9825f1": { "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_f84a8e3ec01c475fb784009a8752e18d", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_x+'... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_x+'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "444929979b6d4b12bf792d850ffad90a": { "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 } }, "45f60c2b8b6c4542a7b671618de8d261": { "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 } }, "4933f8e9d3624e939dcaa6cac65a5338": { "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_d4d33deb70c24ba6a16c76cd43052343", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_y-'... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_y-'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "4ca868381d6245028645d97784562b41": { "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_444929979b6d4b12bf792d850ffad90a", "msg_id": "", "outputs": [ { "data": { "text/html": "
🏃  Starting 'sphereRCS_empty'...\n
\n", "text/plain": "\u001b[32m🏃 \u001b[0m \u001b[1;32mStarting 'sphereRCS_empty'...\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "5866c597e0f94ce99d0059a57e9c4ece": { "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 } }, "5a2e5a16f57b4459a984a96dd930a272": { "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_5866c597e0f94ce99d0059a57e9c4ece", "msg_id": "", "outputs": [ { "data": { "text/html": "
🏃  Finishing 'sphereRCS'...\n
\n", "text/plain": "\u001b[32m🏃 \u001b[0m \u001b[1;32mFinishing 'sphereRCS'...\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "5d46160cd7594f71ac3f3c8edf1a511c": { "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 } }, "608a71ecf0d2437ba74d73a73897e4cf": { "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_8cf0cd305f0b4e6fb29fb5041762c8ab", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/14.3 kB?-:--:--\n
\n", "text/plain": "\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/14.3 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "60d0a5a134e74fbb8f5994cb898129c9": { "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_88ef870b2ede46888f58a9d527f26f80", "msg_id": "", "outputs": [ { "data": { "text/html": "
% done (field decay = 2.41e-11) ━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━   4% -:--:--\n
\n", "text/plain": "% done (field decay = 2.41e-11) \u001b[38;2;249;38;114m━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m 4%\u001b[0m \u001b[36m-:--:--\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "69bde709ee5442cfa19958d29c235698": { "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_09914b174f1f4b52854122cfeb25814f", "msg_id": "", "outputs": [ { "data": { "text/html": "
% done (field decay = 6.05e-06) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━  84% 0:00:16\n
\n", "text/plain": "% done (field decay = 6.05e-06) \u001b[38;2;249;38;114m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[38;2;249;38;114m╸\u001b[0m\u001b[38;5;237m━━━━━━\u001b[0m \u001b[35m 84%\u001b[0m \u001b[36m0:00:16\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "6c080c798a0c4382b3dc681ee24e6b66": { "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_0564a30e95d5447cb86cd41aa9fd3a86", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_downsampled_y+'... ━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_downsampled_y+'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "701a584685474d6ba04d7d8052884e87": { "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 } }, "7b619bcc04f647d99d0deae53b336599": { "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_345acedbdbef4f4ab5a4aff16a0b697e", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_z+'... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_z+'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "7f609f5ed7784cfc99874b92543354fa": { "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 } }, "88ef870b2ede46888f58a9d527f26f80": { "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 } }, "89341975a0664b1f9b4f0ed4e920321a": { "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_36571bea683a4ba58e0ee556680dc0f0", "msg_id": "", "outputs": [ { "data": { "text/html": "
🏃  Starting 'sphereRCS'...\n
\n", "text/plain": "\u001b[32m🏃 \u001b[0m \u001b[1;32mStarting 'sphereRCS'...\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "8cf0cd305f0b4e6fb29fb5041762c8ab": { "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 } }, "8f4d86900fcf4c728c582ccb6567867c": { "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 } }, "927779c8f4184515a7359f4cc3be8749": { "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 } }, "9d62a484249b44eca9e5b7ade9541996": { "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 } }, "b54d74e30ddb4641ba96cf029cfd5888": { "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_fb1da584fcca4c358cfeddf1bbb5bf38", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_downsampled_x-'... ━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_downsampled_x-'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "b57a15013790467c9f53012d7a778834": { "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_8f4d86900fcf4c728c582ccb6567867c", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_y+'... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_y+'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "bcad67d67e664c1e88e9377892ed7945": { "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_7f609f5ed7784cfc99874b92543354fa", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_z-'... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_z-'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "bdbdf981530946fd88ba4a69f4555e6d": { "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_701a584685474d6ba04d7d8052884e87", "msg_id": "", "outputs": [ { "data": { "text/html": "
🚶  Finishing 'sphereRCS_empty'...\n
\n", "text/plain": "\u001b[32m🚶 \u001b[0m \u001b[1;32mFinishing 'sphereRCS_empty'...\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "c174af01aadf4f60b5a86235e1a78241": { "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_d7ca922b07a34fc8b410c43262b3ba84", "msg_id": "", "outputs": [ { "data": { "text/html": "
 simulation.json ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0%0.0/14.3 kB?-:--:--\n
\n", "text/plain": "\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;5;237m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m0.0%\u001b[0m • \u001b[32m0.0/14.3 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m-:--:--\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "c62aadec47a04c9eb7cc5a813b121662": { "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_0b7945fb83b54c3797ed2a6b5e92585e", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_downsampled_y-'... ━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_downsampled_y-'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "d4d33deb70c24ba6a16c76cd43052343": { "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 } }, "d7ca922b07a34fc8b410c43262b3ba84": { "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 } }, "daa53e99201d47b9ae6e7dfec560693d": { "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_5d46160cd7594f71ac3f3c8edf1a511c", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_downsampled_z+'... ━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_downsampled_z+'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "e9075b5ac1ab4596bc655c1da204be09": { "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 } }, "f84a8e3ec01c475fb784009a8752e18d": { "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 } }, "fb1da584fcca4c358cfeddf1bbb5bf38": { "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 } }, "fcd6afc6a22a4c4d81cf01a0b171e24c": { "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_927779c8f4184515a7359f4cc3be8749", "msg_id": "", "outputs": [ { "data": { "text/html": "
Processing surface monitor 'near_field_downsampled_z-'... ━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00\n
\n", "text/plain": "Processing surface monitor 'near_field_downsampled_z-'... \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 4 }