{ "cells": [ { "cell_type": "markdown", "id": "ae58ac25", "metadata": {}, "source": [ "## Rendering with instanced geometries\n", "\n", "This test demonstrates rendering with multi-level instancing." ] }, { "cell_type": "code", "execution_count": 1, "id": "cc60247e", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:27.812497Z", "iopub.status.busy": "2021-10-22T11:34:27.811753Z", "iopub.status.idle": "2021-10-22T11:34:27.823556Z", "shell.execute_reply": "2021-10-22T11:34:27.822979Z" } }, "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 2, "id": "3e56a3e1", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:27.827538Z", "iopub.status.busy": "2021-10-22T11:34:27.826833Z", "iopub.status.idle": "2021-10-22T11:34:27.923400Z", "shell.execute_reply": "2021-10-22T11:34:27.924013Z" } }, "outputs": [], "source": [ "import lmenv\n", "env = lmenv.load('.lmenv')" ] }, { "cell_type": "code", "execution_count": 3, "id": "a9f24bef", "metadata": { "code_folding": [], "execution": { "iopub.execute_input": "2021-10-22T11:34:27.929409Z", "iopub.status.busy": "2021-10-22T11:34:27.928795Z", "iopub.status.idle": "2021-10-22T11:34:28.424446Z", "shell.execute_reply": "2021-10-22T11:34:28.424839Z" } }, "outputs": [], "source": [ "# Imports\n", "import os\n", "import traceback\n", "import imageio\n", "import pandas as pd\n", "import numpy as np\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "from mpl_toolkits.axes_grid1 import make_axes_locatable\n", "import lmscene\n", "import lightmetrica as lm" ] }, { "cell_type": "code", "execution_count": 4, "id": "37bc15e3", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:28.429534Z", "iopub.status.busy": "2021-10-22T11:34:28.428549Z", "iopub.status.idle": "2021-10-22T11:34:28.445294Z", "shell.execute_reply": "2021-10-22T11:34:28.445663Z" } }, "outputs": [ { "data": { "text/plain": [ "263" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.getpid()" ] }, { "cell_type": "code", "execution_count": 5, "id": "5c45cfc5", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:28.449972Z", "iopub.status.busy": "2021-10-22T11:34:28.449022Z", "iopub.status.idle": "2021-10-22T11:34:28.464017Z", "shell.execute_reply": "2021-10-22T11:34:28.464395Z" } }, "outputs": [], "source": [ "%load_ext lightmetrica_jupyter" ] }, { "cell_type": "code", "execution_count": 6, "id": "f9a9b9f1", "metadata": { "code_folding": [], "execution": { "iopub.execute_input": "2021-10-22T11:34:28.468235Z", "iopub.status.busy": "2021-10-22T11:34:28.467585Z", "iopub.status.idle": "2021-10-22T11:34:28.479923Z", "shell.execute_reply": "2021-10-22T11:34:28.479497Z" } }, "outputs": [], "source": [ "# Initialize Lightmetrica\n", "lm.init()\n", "lm.log.init('jupyter')\n", "lm.progress.init('jupyter')" ] }, { "cell_type": "code", "execution_count": 7, "id": "a944f56f", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:28.484040Z", "iopub.status.busy": "2021-10-22T11:34:28.483398Z", "iopub.status.idle": "2021-10-22T11:34:28.497515Z", "shell.execute_reply": "2021-10-22T11:34:28.497908Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[I|0.016] Loading plugin [name='accel_embree']\n", "[I|0.017] .. Successfully loaded [name='accel_embree']\n", "[I|0.017] Loading plugin [name='accel_nanort']\n", "[I|0.017] .. Successfully loaded [name='accel_nanort']\n" ] } ], "source": [ "lm.comp.load_plugin(os.path.join(env.bin_path, 'accel_embree'))\n", "lm.comp.load_plugin(os.path.join(env.bin_path, 'accel_nanort'))" ] }, { "cell_type": "code", "execution_count": 8, "id": "a035ba82", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:28.501864Z", "iopub.status.busy": "2021-10-22T11:34:28.501230Z", "iopub.status.idle": "2021-10-22T11:34:28.513560Z", "shell.execute_reply": "2021-10-22T11:34:28.514094Z" } }, "outputs": [], "source": [ "if not lm.Release:\n", " lm.parallel.init('openmp', num_threads=1)\n", " lm.debug.attach_to_debugger()" ] }, { "cell_type": "code", "execution_count": 9, "id": "3c447d1f", "metadata": { "code_folding": [], "execution": { "iopub.execute_input": "2021-10-22T11:34:28.523230Z", "iopub.status.busy": "2021-10-22T11:34:28.522493Z", "iopub.status.idle": "2021-10-22T11:34:28.538166Z", "shell.execute_reply": "2021-10-22T11:34:28.537722Z" } }, "outputs": [], "source": [ "# Create a sphere geometry with triangle mesh\n", "r = 1\n", "numTheta = 10\n", "numPhi = 2*numTheta\n", "vs = np.zeros((numPhi*(numTheta+1), 3))\n", "ns = np.zeros((numPhi*(numTheta+1), 3))\n", "ts = np.zeros((numPhi*(numTheta+1), 2))\n", "for i in range(numTheta+1):\n", " for j in range(numPhi):\n", " theta = i*np.pi/numTheta\n", " phi = j*2*np.pi/numPhi\n", " idx = i*numPhi+j\n", " ns[idx,0] = np.sin(theta)*np.sin(phi)\n", " ns[idx,1] = np.cos(theta)\n", " ns[idx,2] = np.sin(theta)*np.cos(phi)\n", " vs[idx,0] = r*ns[idx,0]\n", " vs[idx,1] = r*ns[idx,1]\n", " vs[idx,2] = r*ns[idx,2]\n", "\n", "fs = np.zeros((2*numPhi*(numTheta-1), 3), dtype=np.int32)\n", "idx = 0\n", "for i in range(1,numTheta+1):\n", " for j in range(1,numPhi+1):\n", " p00 = (i-1)*numPhi+j-1\n", " p01 = (i-1)*numPhi+j%numPhi\n", " p10 = i*numPhi+j-1\n", " p11 = i*numPhi+j%numPhi\n", " if i > 1:\n", " fs[idx,:] = np.array([p10,p01,p00])\n", " idx += 1\n", " if i < numTheta:\n", " fs[idx,:] = np.array([p11,p01,p10])\n", " idx += 1" ] }, { "cell_type": "code", "execution_count": 10, "id": "490b9444", "metadata": { "code_folding": [], "execution": { "iopub.execute_input": "2021-10-22T11:34:28.545217Z", "iopub.status.busy": "2021-10-22T11:34:28.544535Z", "iopub.status.idle": "2021-10-22T11:34:28.638018Z", "shell.execute_reply": "2021-10-22T11:34:28.637581Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[I|0.077] Loading asset [name='accel']\n", "[I|0.078] Loading asset [name='scene']\n", "[I|0.078] Loading asset [name='mesh_sphere']\n", "[I|0.079] Loading asset [name='camera_main']\n", "[I|0.079] Loading asset [name='material_white']\n", "[I|0.079] Loading asset [name='film_output']\n", "[I|0.157] Loading asset [name='renderer']\n" ] } ], "source": [ "accel = lm.load_accel('accel', 'nanort')\n", "scene = lm.load_scene('scene', 'default', accel=accel)\n", "mesh = lm.load_mesh('mesh_sphere', 'raw',\n", " ps=vs.flatten().tolist(),\n", " ns=ns.flatten().tolist(),\n", " ts=ts.flatten().tolist(),\n", " fs={\n", " 'p': fs.flatten().tolist(),\n", " 't': fs.flatten().tolist(),\n", " 'n': fs.flatten().tolist()\n", " })\n", "camera = lm.load_camera('camera_main', 'pinhole',\n", " position=[0,0,50],\n", " center=[0,0,0],\n", " up=[0,1,0],\n", " vfov=30,\n", " aspect=16/9)\n", "material = lm.load_material('material_white', 'diffuse', Kd=[1,1,1])\n", "film = lm.load_film('film_output', 'bitmap', w=1920, h=1080)\n", "renderer = lm.load_renderer('renderer', 'raycast',\n", " scene=scene,\n", " output=film,\n", " visualize_normal=True,\n", " bg_color=[1,1,1])" ] }, { "cell_type": "markdown", "id": "57bdb232", "metadata": {}, "source": [ "### Without instancing" ] }, { "cell_type": "code", "execution_count": 11, "id": "d372a020", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:28.643568Z", "iopub.status.busy": "2021-10-22T11:34:28.642895Z", "iopub.status.idle": "2021-10-22T11:34:29.985413Z", "shell.execute_reply": "2021-10-22T11:34:29.984985Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[I|0.178] Building acceleration structure [name='accel']\n", "[I|0.178] .. Flattening scene\n", "[I|0.182] .. Building\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "776dc5efa4a4448988de8b640105871b", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/2073600 [00:00" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "img = np.copy(film.buffer())\n", "f = plt.figure(figsize=(15,15))\n", "ax = f.add_subplot(111)\n", "ax.imshow(np.clip(np.power(img,1/2.2),0,1), origin='lower')\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "df7d8b34", "metadata": {}, "source": [ "\n", "### Single-level" ] }, { "cell_type": "code", "execution_count": 13, "id": "58db82bd", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:30.976708Z", "iopub.status.busy": "2021-10-22T11:34:30.976035Z", "iopub.status.idle": "2021-10-22T11:34:32.308103Z", "shell.execute_reply": "2021-10-22T11:34:32.308852Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[I|2.511] Building acceleration structure [name='accel']\n", "[I|2.511] .. Flattening scene\n", "[I|2.512] .. Building\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e7f37c041a77466e8225467617017161", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/2073600 [00:00" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "img = np.copy(film.buffer())\n", "f = plt.figure(figsize=(15,15))\n", "ax = f.add_subplot(111)\n", "ax.imshow(np.clip(np.power(img,1/2.2),0,1), origin='lower')\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "69ac5e99", "metadata": {}, "source": [ "### Multi-level" ] }, { "cell_type": "code", "execution_count": 15, "id": "ad451678", "metadata": { "execution": { "iopub.execute_input": "2021-10-22T11:34:33.246696Z", "iopub.status.busy": "2021-10-22T11:34:33.245729Z", "iopub.status.idle": "2021-10-22T11:34:34.556778Z", "shell.execute_reply": "2021-10-22T11:34:34.557369Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[I|4.780] Building acceleration structure [name='accel']\n", "[I|4.780] .. Flattening scene\n", "[I|4.782] .. Building\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "8af8e4df4f784ba7b0aff264dee56491", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/2073600 [00:00" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "img = np.copy(film.buffer())\n", "f = plt.figure(figsize=(15,15))\n", "ax = f.add_subplot(111)\n", "ax.imshow(np.clip(np.power(img,1/2.2),0,1), origin='lower')\n", "plt.show()" ] } ], "metadata": { "jupytext": { "cell_metadata_json": true, "formats": "ipynb,py:light", "text_representation": { "extension": ".py", "format_name": "light", "format_version": "1.5", "jupytext_version": "1.3.3" } }, "kernelspec": { "display_name": "Python 3", "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.7.10" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "1a4df4d24d1544d98f2348c643008d1d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "1a86b94b3ec140dab0ecb54d44d2d240": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "1d242c70fbd44cacaef2d3043cd8c55b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_84bb4faff4454b5295cdfef7791783ef", "placeholder": "​", "style": "IPY_MODEL_1a86b94b3ec140dab0ecb54d44d2d240", "value": "100%" } }, "275975a2b1424047a945fa50e6d7d3ca": { "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 } }, "3e8e20582d014d69a5f75dd61cf4ad6c": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "51757e7c189c4f55adc93cd8a9a1ad87": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_573986cc00854f898a40e3fba2c11544", "placeholder": "​", "style": "IPY_MODEL_cf3bb17c7f4b463cbf9f923d7c52ca7b", "value": "100%" } }, "573986cc00854f898a40e3fba2c11544": { "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 } }, "5bc5d8c975ab47238d24c23dfe36c3ed": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "6b5a35620dc642ed8739f7632f110d36": { "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 } }, "75b2ceae58ba4393aaab0c606c26e0e2": { "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 } }, "75e57edb2845439c80e61941711f78ba": { "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 } }, "776dc5efa4a4448988de8b640105871b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_51757e7c189c4f55adc93cd8a9a1ad87", "IPY_MODEL_edb5db71c6f54f28addaf5634492be2a", "IPY_MODEL_daeed8f1dbc04c3daf5558f97ec98d2d" ], "layout": "IPY_MODEL_c482bab0cd564e5eb8d5f842e524ecd6" } }, "7944e59f34544cf3aa1e1c8fb7f857ab": { "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 } }, "7d022bdef24e47a481059d16cbae8e2f": { "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 } }, "82596afd012b410e9dccec06a46676a2": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "84bb4faff4454b5295cdfef7791783ef": { "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 } }, "8af8e4df4f784ba7b0aff264dee56491": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_9d2ec345a7f3467c815f28694992e79f", "IPY_MODEL_e45eab0874b7451ab50750701cb7ed69", "IPY_MODEL_e38ae75f7f264b1f9f51db6fad2999e9" ], "layout": "IPY_MODEL_93810778275247ea921da6639b837598" } }, "912bd0188e27478593283b26a3f88de3": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } }, "93810778275247ea921da6639b837598": { "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 } }, "955ef923181b4ad2ab53c8115507129a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_b427fb6cc87e4e38aa3001a9f2b474c1", "placeholder": "​", "style": "IPY_MODEL_82596afd012b410e9dccec06a46676a2", "value": " 2073600/2073600 [00:01<00:00, 1697107.62it/s]" } }, "9d2ec345a7f3467c815f28694992e79f": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_7944e59f34544cf3aa1e1c8fb7f857ab", "placeholder": "​", "style": "IPY_MODEL_c5967c1addbf4c47804046a5916980c5", "value": "100%" } }, "b427fb6cc87e4e38aa3001a9f2b474c1": { "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 } }, "c482bab0cd564e5eb8d5f842e524ecd6": { "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 } }, "c5967c1addbf4c47804046a5916980c5": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "cf3bb17c7f4b463cbf9f923d7c52ca7b": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "DescriptionStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "DescriptionStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "description_width": "" } }, "daeed8f1dbc04c3daf5558f97ec98d2d": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_6b5a35620dc642ed8739f7632f110d36", "placeholder": "​", "style": "IPY_MODEL_3e8e20582d014d69a5f75dd61cf4ad6c", "value": " 2073600/2073600 [00:01<00:00, 1737381.03it/s]" } }, "e38ae75f7f264b1f9f51db6fad2999e9": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HTMLModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HTMLView", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_f701034f06714b44add3b702053fdbfc", "placeholder": "​", "style": "IPY_MODEL_5bc5d8c975ab47238d24c23dfe36c3ed", "value": " 2073600/2073600 [00:01<00:00, 1727523.57it/s]" } }, "e45eab0874b7451ab50750701cb7ed69": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_75b2ceae58ba4393aaab0c606c26e0e2", "max": 2073600.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_912bd0188e27478593283b26a3f88de3", "value": 2073600.0 } }, "e74a0b515ddc4d8295c068f789efef34": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_275975a2b1424047a945fa50e6d7d3ca", "max": 2073600.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_1a4df4d24d1544d98f2348c643008d1d", "value": 2073600.0 } }, "e7f37c041a77466e8225467617017161": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "HBoxModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "HBoxView", "box_style": "", "children": [ "IPY_MODEL_1d242c70fbd44cacaef2d3043cd8c55b", "IPY_MODEL_e74a0b515ddc4d8295c068f789efef34", "IPY_MODEL_955ef923181b4ad2ab53c8115507129a" ], "layout": "IPY_MODEL_7d022bdef24e47a481059d16cbae8e2f" } }, "edb5db71c6f54f28addaf5634492be2a": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "FloatProgressModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "1.5.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_tooltip": null, "layout": "IPY_MODEL_75e57edb2845439c80e61941711f78ba", "max": 2073600.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_fabcb4f4b344450c9aa0770e84982987", "value": 2073600.0 } }, "f701034f06714b44add3b702053fdbfc": { "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 } }, "fabcb4f4b344450c9aa0770e84982987": { "model_module": "@jupyter-widgets/controls", "model_module_version": "1.5.0", "model_name": "ProgressStyleModel", "state": { "_model_module": "@jupyter-widgets/controls", "_model_module_version": "1.5.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "StyleView", "bar_color": null, "description_width": "" } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }