{ "cells": [ { "cell_type": "markdown", "id": "5cbc8640", "metadata": {}, "source": [ "## Comparison of: \n", "(1) adaptive variable time steps \n", "(2) fixed time steps \n", "(3) exact solution \n", "### for the reaction `A <-> B`,\n", "with 1st-order kinetics in both directions, taken to equilibrium.\n", "\n", "This is a continuation of the experiments `react_2_a` (fixed time steps) and `react_2_b` (adaptive variable time steps)\n", "\n", "**Background**: please see experiments `react_2_a` and `react_2_b` " ] }, { "cell_type": "code", "execution_count": 1, "id": "5dd32e3b-3dfd-4f61-b9d3-32c2596af995", "metadata": {}, "outputs": [], "source": [ "LAST_REVISED = \"Aug. 19, 2024\"\n", "LIFE123_VERSION = \"1.0.0.beta.38\" # Version this experiment is based on" ] }, { "cell_type": "code", "execution_count": 2, "id": "bfc75f60-dd56-413b-a1e0-77e69953f0ed", "metadata": {}, "outputs": [], "source": [ "#import set_path # Using MyBinder? Uncomment this before running the next cell!" ] }, { "cell_type": "code", "execution_count": 3, "id": "a29db1c7", "metadata": { "tags": [] }, "outputs": [], "source": [ "#import sys\n", "#sys.path.append(\"C:/some_path/my_env_or_install\") # CHANGE to the folder containing your venv or libraries installation!\n", "# NOTE: If any of the imports below can't find a module, uncomment the lines above, or try: import set_path \n", "\n", "from life123 import check_version, ChemData, UniformCompartment\n", "\n", "import numpy as np\n", "import plotly.graph_objects as go\n", "from life123 import ReactionKinetics\n", "from life123.visualization.plotly_helper import PlotlyHelper" ] }, { "cell_type": "code", "execution_count": 4, "id": "46794745-9412-473e-90f4-9cea7fe42bb5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "OK\n" ] } ], "source": [ "check_version(LIFE123_VERSION)" ] }, { "cell_type": "code", "execution_count": null, "id": "a7316c65-0489-404e-96ce-b045feff89bc", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "ac9eea69-174c-43e5-9eed-443cbc5e2ba7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "1bc60f3e-6552-43d4-aef2-a33d95811016", "metadata": {}, "source": [ "## Common set up for the chemicals and the reaction (used by all the simulations)" ] }, { "cell_type": "code", "execution_count": 5, "id": "78077d8c", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of reactions: 1 (at temp. 25 C)\n", "0: A <-> B (kF = 3 / kR = 2 / delta_G = -1,005.1 / K = 1.5) | 1st order in all reactants & products\n", "Set of chemicals involved in the above reactions: {'B', 'A'}\n" ] } ], "source": [ "# Instantiate the simulator and specify the chemicals\n", "chem_data = ChemData()\n", "\n", "# Reaction A <-> B , with 1st-order kinetics in both directions\n", "chem_data.add_reaction(reactants=\"A\", products=\"B\", \n", " forward_rate=3., reverse_rate=2.)\n", "\n", "chem_data.describe_reactions()" ] }, { "cell_type": "code", "execution_count": null, "id": "04be6f77-eb76-4c4c-a2f9-7c80ca9bd8f0", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "b496f370-290f-4f3a-8ce4-3b0f3132e43c", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "23e12ad6-03b1-4856-bc39-92130e6f1b2f", "metadata": {}, "source": [ "# PART 1 - VARIABLE TIME STEPS\n", "We'll do this part first, because the number of steps taken is unpredictable; \n", "we'll note that number, and in Part 2 we'll do exactly that same number of fixed steps" ] }, { "cell_type": "code", "execution_count": 6, "id": "d3751799-542c-4d18-a4dd-36e42b63b138", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "2 species:\n", " Species 0 (A). Conc: 10.0\n", " Species 1 (B). Conc: 50.0\n", "Set of chemicals involved in reactions: {'B', 'A'}\n" ] } ], "source": [ "dynamics_variable = UniformCompartment(chem_data=chem_data, preset=\"mid\")\n", "\n", "# Initial concentrations of all the chemicals\n", "dynamics_variable.set_conc({\"A\": 10., \"B\": 50.})\n", "\n", "dynamics_variable.describe_state()" ] }, { "cell_type": "markdown", "id": "9fd83080-a135-4f3d-bbf3-a1a9e815a915", "metadata": { "tags": [] }, "source": [ "### Run the reaction (VARIABLE adaptive time steps)" ] }, { "cell_type": "code", "execution_count": 7, "id": "cab9218d-0227-4d47-b128-0394c56f92c0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Some steps were backtracked and re-done, to prevent negative concentrations or excessively large concentration changes\n", "19 total step(s) taken\n", "Number of step re-do's because of elective soft aborts: 2\n", "Norm usage: {'norm_A': 17, 'norm_B': 15, 'norm_C': 15, 'norm_D': 15}\n" ] } ], "source": [ "dynamics_variable.single_compartment_react(initial_step=0.1, target_end_time=1.2,\n", " variable_steps=True, \n", " snapshots={\"initial_caption\": \"1st reaction step\",\n", " \"final_caption\": \"last reaction step\"}\n", " )" ] }, { "cell_type": "markdown", "id": "01dd1821-e725-48d7-b5fc-b76b3b95edd8", "metadata": {}, "source": [ "#### The flag _variable_steps_ automatically adjusts up or down the time steps\n", "In part 2, we'll remember that it took 19 steps" ] }, { "cell_type": "code", "execution_count": 8, "id": "08985297-d0a5-4351-aef2-354ce804cde6", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABcaption
00.00000010.00000050.000000Initialized state
10.01600011.12000048.8800001st reaction step
20.03200012.15040047.849600
30.04800013.09836846.901632
40.06720014.14492545.855075
50.08640015.09101244.908988
60.10944016.11732743.882673
70.13248017.02541142.974589
80.16012817.98957842.010422
90.19330618.98663541.013365
100.23311919.98462440.015376
110.28089420.94381239.056188
120.33822521.81988238.180118
130.40702222.56981037.430190
140.48957923.16016836.839832
150.58864723.57616936.423831
160.70752823.82809736.171903
170.85018623.95071336.049287
181.02137523.99290036.007100
191.22680224.00019335.999807last reaction step
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "0 0.000000 10.000000 50.000000 Initialized state\n", "1 0.016000 11.120000 48.880000 1st reaction step\n", "2 0.032000 12.150400 47.849600 \n", "3 0.048000 13.098368 46.901632 \n", "4 0.067200 14.144925 45.855075 \n", "5 0.086400 15.091012 44.908988 \n", "6 0.109440 16.117327 43.882673 \n", "7 0.132480 17.025411 42.974589 \n", "8 0.160128 17.989578 42.010422 \n", "9 0.193306 18.986635 41.013365 \n", "10 0.233119 19.984624 40.015376 \n", "11 0.280894 20.943812 39.056188 \n", "12 0.338225 21.819882 38.180118 \n", "13 0.407022 22.569810 37.430190 \n", "14 0.489579 23.160168 36.839832 \n", "15 0.588647 23.576169 36.423831 \n", "16 0.707528 23.828097 36.171903 \n", "17 0.850186 23.950713 36.049287 \n", "18 1.021375 23.992900 36.007100 \n", "19 1.226802 24.000193 35.999807 last reaction step" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics_variable.get_history() # The system's history, saved during the run of single_compartment_react()" ] }, { "cell_type": "code", "execution_count": 9, "id": "aa8a05ce-b039-43fa-8341-0387bc74ef08", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.016000000000000004, 0.03200000000000001, 0.048000000000000015, 0.06720000000000002, 0.08640000000000003, 0.10944000000000004, 0.13248000000000004, 0.16012800000000005, 0.19330560000000005, 0.23311872000000006, 0.28089446400000007, 0.3382253568000001, 0.4070224281600001, 0.48957891379200014, 0.5886466965504001, 0.7075280358604801, 0.850185643032576, 1.0213747716390913, 1.2268017259669095 ], "xaxis": "x", "y": [ 10, 11.120000000000001, 12.150400000000001, 13.098368, 14.144924672, 15.091011903488, 16.117327332206184, 17.025411223536032, 17.989578375994412, 18.98663519835745, 19.984623670615306, 20.94381162849702, 21.819881668013238, 22.569810450307923, 23.160167565358876, 23.576169251301298, 23.828097086531773, 23.950713378038216, 23.992900047366195, 24.000192655593363 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "B", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.016000000000000004, 0.03200000000000001, 0.048000000000000015, 0.06720000000000002, 0.08640000000000003, 0.10944000000000004, 0.13248000000000004, 0.16012800000000005, 0.19330560000000005, 0.23311872000000006, 0.28089446400000007, 0.3382253568000001, 0.4070224281600001, 0.48957891379200014, 0.5886466965504001, 0.7075280358604801, 0.850185643032576, 1.0213747716390913, 1.2268017259669095 ], "xaxis": "x", "y": [ 50, 48.88, 47.8496, 46.901632, 45.855075328, 44.908988096512, 43.88267266779381, 42.97458877646397, 42.01042162400559, 41.013364801642545, 40.015376329384694, 39.05618837150298, 38.180118331986755, 37.43018954969207, 36.83983243464112, 36.42383074869869, 36.171902913468216, 36.04928662196178, 36.007099952633794, 35.999807344406626 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "shapes": [ { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0, "x1": 0, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.016000000000000004, "x1": 0.016000000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.03200000000000001, "x1": 0.03200000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.048000000000000015, "x1": 0.048000000000000015, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.06720000000000002, "x1": 0.06720000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.08640000000000003, "x1": 0.08640000000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.10944000000000004, "x1": 0.10944000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.13248000000000004, "x1": 0.13248000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.16012800000000005, "x1": 0.16012800000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.19330560000000005, "x1": 0.19330560000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.23311872000000006, "x1": 0.23311872000000006, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.28089446400000007, "x1": 0.28089446400000007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.3382253568000001, "x1": 0.3382253568000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.4070224281600001, "x1": 0.4070224281600001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.48957891379200014, "x1": 0.48957891379200014, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5886466965504001, "x1": 0.5886466965504001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.7075280358604801, "x1": 0.7075280358604801, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.850185643032576, "x1": 0.850185643032576, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.0213747716390913, "x1": 1.0213747716390913, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.2268017259669095, "x1": 1.2268017259669095, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction `A <-> B` . Changes in concentrations with time (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.001360090605284822, 1.2281618165721944 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 7.777777777777778, 52.22222222222222 ], "title": { "text": "Concentration" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics_variable.plot_history(colors=['darkturquoise', 'orange'], show_intervals=True)" ] }, { "cell_type": "markdown", "id": "017a76cd-9f36-4e8c-a98e-e32e659f45cf", "metadata": { "tags": [] }, "source": [ "#### Notice how the reaction proceeds in smaller steps in the early times, when [A] and [B] are changing much more rapidly\n", "That resulted from passing the flag _variable_steps=True_ to single_compartment_react()" ] }, { "cell_type": "code", "execution_count": null, "id": "d213e19d-4910-4f11-88c3-64b7d997e493", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "123ed7bd-cb03-4f5d-88b3-bfa5bc316274", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "10c710ac", "metadata": {}, "source": [ "# PART 2 - FIXED TIME STEPS" ] }, { "cell_type": "markdown", "id": "e0529a0c", "metadata": {}, "source": [ "#### This is a re-do of the above simulation simulation, but with a fixed time step\n", "The fixed time step is chosen to attain the same total number of data points as obtained with the variable time steps of part 1" ] }, { "cell_type": "code", "execution_count": 10, "id": "f9736433", "metadata": {}, "outputs": [], "source": [ "dynamics_fixed = UniformCompartment(chem_data=chem_data) # Re-use same chemicals and reactions of part 1" ] }, { "cell_type": "code", "execution_count": 11, "id": "9fc3948d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "2 species:\n", " Species 0 (A). Conc: 10.0\n", " Species 1 (B). Conc: 50.0\n", "Set of chemicals involved in reactions: {'B', 'A'}\n" ] } ], "source": [ "# Initial concentrations of all the chemicals\n", "dynamics_fixed.set_conc({\"A\": 10., \"B\": 50.})\n", "\n", "dynamics_fixed.describe_state()" ] }, { "cell_type": "markdown", "id": "6bb5d54d-e085-4467-856e-b7db5fe20d00", "metadata": {}, "source": [ "### Run the reaction (FIXED time steps)" ] }, { "cell_type": "code", "execution_count": 12, "id": "635630b3-93a2-40c5-bb4b-b7e0b153a450", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "19 total step(s) taken\n" ] } ], "source": [ "# Matching the total number of steps to the earlier, variable-step simulation\n", "dynamics_fixed.single_compartment_react(n_steps=19, target_end_time=1.2,\n", " variable_steps=False,\n", " snapshots={\"initial_caption\": \"1st reaction step\",\n", " \"final_caption\": \"last reaction step\"})" ] }, { "cell_type": "code", "execution_count": 13, "id": "7d2144b8-7331-441a-9122-918725791627", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABcaption
00.00000010.00000050.000000Initialized state
10.06315814.42105345.5789471st reaction step
20.12631617.44598342.554017
30.18947419.51567340.484327
40.25263220.93177639.068224
50.31578921.90068938.099311
60.37894722.56362937.436371
70.44210523.01722036.982780
80.50526323.32757236.672428
90.56842123.53991736.460083
100.63157923.68520736.314793
110.69473723.78461536.215385
120.75789523.85263136.147369
130.82105323.89916936.100831
140.88421123.93101036.068990
150.94736823.95279636.047204
161.01052623.96770336.032297
171.07368423.97790236.022098
181.13684223.98488036.015120
191.20000023.98965536.010345last reaction step
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "0 0.000000 10.000000 50.000000 Initialized state\n", "1 0.063158 14.421053 45.578947 1st reaction step\n", "2 0.126316 17.445983 42.554017 \n", "3 0.189474 19.515673 40.484327 \n", "4 0.252632 20.931776 39.068224 \n", "5 0.315789 21.900689 38.099311 \n", "6 0.378947 22.563629 37.436371 \n", "7 0.442105 23.017220 36.982780 \n", "8 0.505263 23.327572 36.672428 \n", "9 0.568421 23.539917 36.460083 \n", "10 0.631579 23.685207 36.314793 \n", "11 0.694737 23.784615 36.215385 \n", "12 0.757895 23.852631 36.147369 \n", "13 0.821053 23.899169 36.100831 \n", "14 0.884211 23.931010 36.068990 \n", "15 0.947368 23.952796 36.047204 \n", "16 1.010526 23.967703 36.032297 \n", "17 1.073684 23.977902 36.022098 \n", "18 1.136842 23.984880 36.015120 \n", "19 1.200000 23.989655 36.010345 last reaction step" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics_fixed.get_history() # The system's history, saved during the run of single_compartment_react()" ] }, { "cell_type": "code", "execution_count": 14, "id": "35c15b2d-3796-4e29-b038-a003fc98154b", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.06315789473684211, 0.12631578947368421, 0.18947368421052632, 0.25263157894736843, 0.3157894736842105, 0.3789473684210526, 0.44210526315789467, 0.5052631578947367, 0.5684210526315788, 0.6315789473684209, 0.694736842105263, 0.7578947368421051, 0.8210526315789471, 0.8842105263157892, 0.9473684210526313, 1.0105263157894735, 1.0736842105263156, 1.1368421052631577, 1.1999999999999997 ], "xaxis": "x", "y": [ 10, 14.421052631578949, 17.445983379501385, 19.51567283860621, 20.931776152730563, 21.900688946605122, 22.563629279256137, 23.01722003317525, 23.327571601646223, 23.539917411652677, 23.685206650078147, 23.784615076369256, 23.852631368042122, 23.899168830765664, 23.931010252629136, 23.95279648864099, 23.967702860649098, 23.977901957286225, 23.98488028656426, 23.989654932912387 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "B", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.06315789473684211, 0.12631578947368421, 0.18947368421052632, 0.25263157894736843, 0.3157894736842105, 0.3789473684210526, 0.44210526315789467, 0.5052631578947367, 0.5684210526315788, 0.6315789473684209, 0.694736842105263, 0.7578947368421051, 0.8210526315789471, 0.8842105263157892, 0.9473684210526313, 1.0105263157894735, 1.0736842105263156, 1.1368421052631577, 1.1999999999999997 ], "xaxis": "x", "y": [ 50, 45.578947368421055, 42.554016620498615, 40.484327161393786, 39.06822384726943, 38.09931105339487, 37.43637072074386, 36.982779966824744, 36.67242839835377, 36.46008258834732, 36.31479334992185, 36.21538492363074, 36.147368631957875, 36.10083116923433, 36.06898974737086, 36.04720351135901, 36.0322971393509, 36.02209804271377, 36.01511971343574, 36.010345067087606 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "shapes": [ { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0, "x1": 0, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.06315789473684211, "x1": 0.06315789473684211, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.12631578947368421, "x1": 0.12631578947368421, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.18947368421052632, "x1": 0.18947368421052632, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.25263157894736843, "x1": 0.25263157894736843, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.3157894736842105, "x1": 0.3157894736842105, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.3789473684210526, "x1": 0.3789473684210526, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.44210526315789467, "x1": 0.44210526315789467, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5052631578947367, "x1": 0.5052631578947367, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5684210526315788, "x1": 0.5684210526315788, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.6315789473684209, "x1": 0.6315789473684209, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.694736842105263, "x1": 0.694736842105263, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.7578947368421051, "x1": 0.7578947368421051, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.8210526315789471, "x1": 0.8210526315789471, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.8842105263157892, "x1": 0.8842105263157892, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.9473684210526313, "x1": 0.9473684210526313, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.0105263157894735, "x1": 1.0105263157894735, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.0736842105263156, "x1": 1.0736842105263156, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.1368421052631577, "x1": 1.1368421052631577, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.1999999999999997, "x1": 1.1999999999999997, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction `A <-> B` . Changes in concentrations with time (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.0010948905109489048, 1.2010948905109486 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 7.777777777777778, 52.22222222222222 ], "title": { "text": "Concentration" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtIAAAFoCAYAAAB60xwkAAAgAElEQVR4Xu29C5hdRZmv/yXd6c61ExIIhADJhMsQIIiBE5DLARTkIkJkRhJnFDgKAqOMZ/DvgDAPGXkGlZkjcxx0CAJOQEcDeiAgAnIRGC5CBhgkQBAwwy0EAgm5pztJd//rW53VrCzW2rvWpWrv3ftdz9NPd+9d9VXVW7Wrfqv2V98a1Gsu4YIABCAAAQhAAAIQgAAEMhEYhJDOxIvEEIAABCAAAQhAAAIQCAggpBkIEIAABCAAAQhAAAIQyEEAIZ0DGlkgAAEIQAACEIAABCCAkGYMQAACEIAABCAAAQhAIAcBhHQOaGSBAAQgAAEIQAACEIAAQpoxAAEIQAACEIAABCAAgRwEENI5oJEFAhCAAAQgAAEIQAACCGnGAAQgAAEIQAACEIAABHIQQEjngEYWCEAAAhCAAAQgAAEIIKQZAxCAAAQgAAEIQAACEMhBACGdAxpZIAABCEAAAhCAAAQggJBmDEAAAhCAAAQgAAEIQCAHAYR0DmhkgQAEIAABCEAAAhCAAEKaMQABCEAAAhCAAAQgAIEcBBDSOaCRBQIQgAAEIAABCEAAAghpxgAEIAABCEAAAhCAAARyEEBI54BGFghAAAIQgAAEIAABCCCkGQMQgAAEIAABCEAAAhDIQQAhnQMaWSAAAQhAAAIQgAAEIICQZgxAAAIQgAAEIAABCEAgBwGEdA5oZIEABCAAAQhAAAIQgABCmjEAAQhAAAIQgAAEIACBHAQQ0jmgkQUCEIAABCAAAQhAAAIIacYABCAAAQhAAAIQgAAEchBASOeARhYIQAACEIAABCAAAQggpBkDEIAABCAAAQhAAAIQyEEAIZ0DGlkgAAEIQAACEIAABCCAkGYMQAACEIAABCAAAQhAIAcBhHQOaGSBAAQgAAEIQAACEIAAQpoxAAEIQAACEIAABCAAgRwEENI5oJEFAhCAAAQgAAEIQAACCGnGAAQgAAEIQAACEIAABHIQQEjngEYWCEAAAhCAAAQgAAEIIKQZAxCAAAQgAAEIQAACEMhBACGdAxpZIAABCEAAAhCAAAQggJAeoGNg36PODFr2z9/6inzyyP8xQFvptlk3/uI3csUPfy47jR8r9998pdvCsA4BCEAAAhCAQMMRQEg3XJfZV/gTp10QiMB//8Hf2Wci5TYE7nnoP+Vv5vxQLvzK5+T0zx7XEHT0JuqEjx8s/+fS8xqivlQSAhBIJ9CIc1CZ/anr2NvLVzbUHFxm+xvR1l9+9R+CPmuWDai6FNLhxJE0gOplhzVtoIR1rwch8/xLr8ppX/57qwno/7vsarnrt08EyJ9/cF4jfnYr1jncXU5KVK2v/unq+TLvprtrziXsz3gbzpx1vHzjvNn9LyOkPyAULsIDcUz7+pCGc4Mrho0wl5bNWtv8zHOvyM0/+nvZd6/Jgfm0z20ZQjqcw6LlhW3Scuv1W7dw7MXX/YE4ZgbSxtdAEtI2mq6uhXRcIIQfqvjrZU9yNvYG2gc5dAXRtpe9+xouGllvgtImUZv+iacJhXS8bTYfkjzllZ0nZBgf+2H9owshQhohXeb4Q0iXSbPPFkK6OtNw4yBpvR9o66/SQEhXHxO1SGGjERpKSIeDTX/X+iuDgXTHFYpMFbrqxnDAfnuU4g4S3eVO2gmx+VBEbWQV4lH7aUI6XNTq+WuocDepUvt1PIYuPAhpm5FFGlsCtRLStvUbKOlqtSNdr/wqjbuBtP6G/BHS9ToSq9drwAjppK/u419FhrsAcSxpX1lGd2nDPJo2zY6KRb3UnSLpLjr8mjm0FU8TvQPXNOpOkJa2etfap4hOSuHklVf4aqllCOh47YsK6kpCWvulHm7O0npMx2GWm5twQd5/6pTgsGR4xV1Y0lxFklxdbG2GZcU/I1p//So76duO+OcsKU20/8MybMZo0oKbtS1p/ZI0D8Rvdqq1Lc9n3qbcanNN9Ob5BnOoVvsmvKJtSOKu6cI0IctPHnlQcBOuV/jtSLwO0ffSxkm0b33OpeHNarSvq924p+2YJo25uGtFXCQmrTUhx6hrx7OLl/S74Gldbb49TGpbNG9cwEXb9c677yeWFx+Daayqjf9Kq1TajUXW9Tc61nU+1E2T+BwSr2eSJkhyObWZg8Ky4p+H6LeISZ8VzRetR/yzGF8Tss4leedUrVdSH0TrGn4G/uUf/jrQQ+GV5kIUH6PxdNE+jAZPSBoj8c9fOL7PMGecwjlK62O7piZ9zuPzZ8MJ6SRRkeQCkCQIFfBxJoJF9NBYOCCigyD8wMSFrqbVztCOTLsjToIevhYVKJVe006Olp02iCpNQrbvxeub1nYbey4EdLzcvGWkCelKAtumza7T5OmPcFGIjrckP8uw76NjP2lcahttbWrapBuTcKKMLvxJX5kltTfpM2p785MmpLWe1fhUW+TjE7G2US/1V09qR9Jr0ZsZm8980vwXLTe0F61bUp9GNx6ShHPSAp4kLsJxkbQoaR9pf0cXvqR+q/VcmrZW6M1FNb/wNBGq4yDKNd7GpN3WajvSajP6+ank9xwfu5XSVmpDUnk29bD9bKd9xsL8aQI9y5iJjvWo8I2Kwfjr8W8ok+Yvm28Kw/bFP7dJn8lKO9JJZz3in6Vqc0m0L4vMqUmf4Xj7QvtxQZwmfOOftXj9KolZZRz9nMbLCNklzYk2bsLVytYx2lBCupLoTbozV4Af3W/PitELkj6wNl+xZPkgp31FFRfIlXzCXH1dnzTB2oqUcJJIm6hcisyshyMrHTbUembZWXDZrrjtPEI/bazYjGstX9n+13Mvb+M+ZWszbcFOEvJp9Ykf7kwrW9NFD1km9UulHel4VJMsfPRgbiWRlTY/xPlk+czbuFiklRuOo3Ccp92cJ/VTpXKzzkvxemif1XourTQOq42vOBttn+7w63X80TP6x2d8LcojpONrXKWxU4aQTjuPkXbOJPq67Wc7bS5NGifRtFnGTNpYT5ursnxGtR56VYqMVemwaHQOq8YsvkbFgwlk8SnPO6dWKiPalrT+iY/7SmySBHE0CpnaWrZ8RfBtWnjDlRRgIY1rWh3jY7LajrRuFNS1kI43KOnuodKddtIgTxNU4SRgOzll+SCndWS8rCyLalliLqluWe60tR55hHRSP2Q5OZ5XSCfdcCXtNpTFt6gdH0I67avSSnf5Ybvi4yftcxGfMCuN9fgiGu4o2OwexHm7ENI2grva7qLNfFNtIUkaW9XKDRccX0I6za2g0m5t2K6kMeJiLg3Hf7XoPUm84xsxauuAffcIkt79wMLgZjRsR7Wd/2p9V2shnfaZzbKOVRPIIeNqkZKyrL9pY9329UrfCCdtOqQJMX29krtQHsGnYyacF6uJXHUVDcV4kTk1/BaqkluRrZCupt+i3wwkbbAoT71xnTB+XLBhGvZVdO3KwzXahw0vpKMLZ9jx8YGY5sMXgohHM4gP5vgCbxtqKMsHOW2CjH+941tIVwozqJyyLix53S6yiM28ZVQTpFl34bPUuUjasN5ZRKTt7nFoO34Dk2W3LD5JpU1aaZ+zSmyin/Xw8x9NX82HVdO6ENLVdmErfY7j7h1ZPvO25VZiGi5+roV09Gvm6E5aUrn1MJcm3Uza+B8r61DMnPiJQwJ/0OhZGR2jKgbUN7eau8xAEdLV1pVqglLfrychnXYzuI3YqhIyNvp5SMuXNncmzX1RG+E6nUVIa/68c2o45uPzTDX3GE0fX1uqHSiNunxEb1r1M6UCWm9Uo+I53KWOfkOAkE6Ij6udEe2wah+4sLNtF45m2pHOMoiziMG8YrdSGS4PG4aCy8YnMguHstIm+cVWsm0rpG13DcKJM+nGKq+QTvoKzpZXdFGq5sPqQkjX+460zU2X7XyYtPhF+6nSV8TRHbBK83AWIe1iRzpp3IW7bjYuX+E3n3r+JlzcQ6Gi7h16YE+/go4u7lluVtM2d2zXqqgwTWpPnKntznPILW1H2vZGJIl/tZ3rLGPGduc5bYxWq4vtvBVNF9qM+u1WEnyat9qD1SqNh2puYVnm1Hh7k0Kw2q4tWXakw3VI5zf9TOmlu9DRb3z0hjXqUhV+DpMeTNc0rh02MXNtd5DL8N3UsvRSn5i0r3SSBnO9+khXEmjVdnBtJo8yBHVRAR2fHNMm93rdkY4KmUoLk3IKfX5thXTaxJ1lkY/bSBvrWXyko2NLP0933v/4h3yhbQ9auRDSlRal0E/Qt490tXLjn9csQrrSZkXaWLOd88LxHffJ19d9zaXRz04lwZ8254V8VBSpW0foV62vq3uHXvHFPYlP3I86LK8MIV1JDJYtpCuJF5t1Q9NUO2yYZf0tKqSz3LAktU/LVyEXPXSr6eJzRJq/te1cV6me0T4uMqdqv+hucPwpv/HxbCuks/hIh8z0d9QvutLrCGkTSilpZyXpTi7sxPhXvZpWwwWpwKh0il5hR0VK0tfp8Q922oczaTCHr1U7SZ/la17bCSktnY1QzroTmlZW+LWpzVfxURtp/Zqn7ZXam7d+1eoRlpnVRSbJblhHm5tLWyEd8o3uUqX5ntvajLsrhW1J8qtLOtkfTa+7zUmfnXBy1N/V4sm7ENJpdYr6K9pGLcjymbcpNy1NyEzDUemT9LII6ayLnZaV9HkLX9P3o3NBredS7be4e1P4eav2jUdU9Onf0c9SdJcvzSWxmrtH1H4RH2lbkaXlFd2RjtY5LZSmDddKrkxZxkxRIa3tSTtHo58N/Rai0m5xkp5ImierRVZRARvnpvO1hjlVYZs298bn+SJzatqcHdcKtkI6FMHxp3ymff5CRmnh8YLxG3OzwbUj5toRLrJRn6UQWnSSjgqR6AQW991SYRvGFkybpKK24mni/tllxpGOnxav5h9ZTdTF37dZKJKEVtZy6iV92vgI62czsWdtS5lCOr5gVxqXtqJXbcTHsI7xMFZtnsOG0YU4/jnUGJ5JN1OhyI6mTwpNF33fNgaoCyEd1iPuY5gmGir1VRYhnaXcJP/HKLMsQjoqJMI6xONIxyOgaLr4Z075hLHNq5118TmXRgVv2L4sB581T9qmQ9o8m7ZjH+23pDjS0Z3ArDul8f4I1zMXO9Ihx2qf7UpzajV3BNv1twwhnWX+TWpTkp912hMbozHdK8WRjq9d4XjQcRONlR3MyTFxmeTHbjunJq2l8bkvi5BOml/SPn9JG6LRsZYWhrMpXTuyChbSQwAC9U3AhZ9hfbeY2kEAAkUIZL1RKFLWQMgLr9r1Yl2Gv6sdDkqGAASKEtAdrtCFILpbUIaLS9G6kR8CEGgcAllDsTZOy8qvKUK6fKa2FhHStqRIBwEIWBFIciuwiSRhZZxEEIBAUxEI55MiUUCaARhCuna9jJCuHXtKhgAEIAABCEAAAhBoYAII6QbuPKoOAQhAAAIQgAAEIFA7Agjp2rGnZAhAAAIQgAAEIACBBiaAkG7gzqPqEIAABCAAAQhAAAK1I4CQrh17SoYABCAAAQhAAAIQaGACCOkG7jyqDgEIQAACEIAABCBQOwII6dqxp2QIQAACEIAABCAAgQYmgJBu4M6j6hCAAAQgAAEIQAACtSOAkK4de0qGAAQgAAEIQAACEGhgAgjpBu48qg4BCEAAAhCAAAQgUDsCCOnasadkCEAAAhCAAAQgAIEGJoCQbuDOo+oQgAAEIAABCEAAArUjgJCuHXtKhgAEIAABCEAAAhBoYAII6QbuPKoOAQhAAAIQgAAEIFA7Agjp2rGnZAhAAAIQgAAEIACBBiaAkG7gzqPqEIAABCAAAQhAAAK1I4CQrh17SoYABCAAAQhAAAIQaGACCOkG7jyqDgEIQAACEIAABCBQOwII6dqxp2QIQAACEIAABCAAgQYmgJBu4M6j6hCAAAQgAAEIQAACtSOAkK4de0qGAAQgAAEIQAACEGhgAgjpBu48qg4BCEAAAhCAAAQgUDsCCOnasadkCEAAAhCAAAQgAIEGJoCQbuDOo+oQgAAEIAABCEAAArUjgJCuHXtKhgAEIAABCEAAAhBoYAII6QbuPKoOAQhAAAIQgAAEIFA7Agjp2rGnZAhAAAIQgAAEIACBBiaAkG7gzqPqEIAABCAAAQhAAAK1I4CQrh17SoYABCAAAQhAAAIQaGACCOkG7jyqDgEIQAACEIAABCBQOwII6dqxp2QIQAACEIAABCAAgQYmgJBu4M6j6hCAAAQgAAEIQAACtSOAkK4de0qGAAQgAAEIQAACEGhgAgjpBu48qg4BCEAAAhCAAAQgUDsCCOnasadkCEAAAhCAAAQgAIEGJoCQbuDOo+oQgAAEIAABCEAAArUjgJCuHXtKhgAEIAABCEAAAhBoYAII6QbuPKoOAQhAAAIQgAAEIFA7Agjp2rGnZAhAAAIQgAAEIACBBiaAkG7gzqPqEIAABCAAAQhAAAK1I4CQrh17SoYABCAAAQhAAAIQaGACCOkG7jyqDgEIQAACEIAABCBQOwII6dqxp2QIQAACEIAABCAAgQYmgJBu4M6j6hCAAAQgAAEIQAACtSOAkK4de0qGAAQgAAEIQAACEGhgAgjpBu48qg4BCEAAAhCAAAQgUDsCCOnasadkCEAAAhCAAAQgAIEGJoCQLqHz1m7YLGs3binBEiYqERgzsk02be6WDV3dgHJMYGhbiwxvb5GVazc5LgnzSmDnccPkrRUbgeGBAPOIB8hbi2Ae8cc6LEnnEi6/BBDSJfBGSJcA0cIEC6AFpJKSsACWBNLSDELaElQJyZhHSoBoaYJ5xBJUickQ0iXCtDSFkLYEVSkZQroEiBYmWAAtIJWUhAWwJJCWZhDSlqBKSMY8UgJESxPMI5agSkyGkC4RpqUphLQlqLRk3/rWt+SCb1zszbVj7ZrV8usF82X26ecUrLl99leXvCwvv/icHHviZ+wzFUy56JknZf26NXLI4R/vt+R6AXzo/rtkws67yF5TpxWsvX32O26dLwfOOFQmTNzNPlPBlDdc+3353OnnSlt7e6qlMhfATV1d8vMb58oZZ3+tYM3tsy9b+ro8tfAxOekzs+0zFUz50uJFsuytN+XIT5yQ2VJeIf34I7+VESM7ZNoBB2UuM2+Ge++8Vfbcez+ZPGXPvCYy55t/4zXyqZmzZVTH6Mx54xls55Frf/CPcvZX/7ZwebYGVry3XB667045dfaZtlkKp3M9tyfNI08vfDSo9/QZhxWuv62BWsztt8yfJ0cec6KM2368bTULp9MxO2fOnMJ2MJCNQNML6QV3PyKXfPe6D1F7/sF5/a+dcuYl8sqrS4P/95g8UW6bd3n/ewjpbAPONjVC2pZU9nQI6ezMbHIgpG0o5UuDkM7HrVouhHQ1QvnfR0jnZ9doORHSRkh/b+5N8vCCqxL77osXXCErVq7pF88qqseN7ZAfX3lhkB4h7WbII6TdcFWrCGk3bBHSbriqVYS0G7YIaTdc1SpC2h3berOMkK4ipI+Yeb58/dxZMvP4w4O+0x3suPDGR9rPsLb9StZPbQZ2KWW6dgxsUuW0Lq9rRzmlN5cV5hF//c084o91WBI+0v6ZI6QTXDtCt45Fi5fI7PMuk/lXXyrTpk4JeifpNYS0n4HLAuiHs5bCAuiPtZaEkPbHm3nEH2vmEX+sfQnp+Lfy/luYv8Qk/Zbf2gc5m15IxyFGXTmshPSaF6X7j/Nk4+4XSm/ryDL6BBspBHRS7u7plc1bemDkmEBry2AZ0jpINhKz2zHpPvOjhg8RvSHnck+AecQ947AE5hF/rMOSdC4pcqkGeuLpxduYGDtmVL/7ay2EdHiW7fKLzur3DsjTRoR0Hmo58oSgdVfaRkirj/ScPf9eeoZPkq79/69s2elTOUq1z7Jm9Wq5+aafyllf/op9poIpX3n5JXnh+Wfl5Jl/XtCSffann1woa9aukaOOPqY/k+sF8Dd33SG77Lqb7Lvf/vYVLZjyF/P/XQ457HDZdddJBS3ZZ//hv1wpZ53zV9LePjQ1U5kLYFdXp1x3zb/KV/76AvtKFkz5xhuvyeOPPiKfnf2XBS3ZZ3/+uWflzTdel+NOOMk+09aUeYX0gw/cJx2jOmT6QTMyl5k3w+0Lfin77Lu/7LHnXnlNZM533Y9+KKfN+rx0jC4etcN2Hrnyn74dRGTydS1f/o7cY+agz5/xJV9Fiuu5PWke+d1jDwft+9ihR3hrZy3m9p/ecL180swF48fv6K2dOmaLRO3Y96gzJSqaw4qruN5x++3kOxd/WWohpMsCiJAui2QVO+GdT+jekeQjrVE+wvdVSF/yP5+S1mW/Ehk0WDZMPD342TTmECc1Jvyduycb1iJEEuHvnHxMhPB3briqVcLfuWFL+Ds3XNVqLeb2RjtsqGL55SVvpgZeCHsnFNL6f7hznSa+ozvbURdZ1VWHz5gmjyxcJCtXrQ1Mn/uFk2XXieO3iaIW5kkSwPGdc81//pdOlaQd9UruumWMuqZ37dAOjUbsiN9t2UTt+PrXzpGeP/5Yhi/9ibSue1G2jPhTI6a/YH7OkJ62cWX0U78NhDRCuuiAImpHUYLJ+Yna4YarWiVqhxu2RO1ww1WtNpqQ1t3okz95aLDrXOkKwwGHwlXTqo7ac8ou/dHM4rrpqutvkbk/ub1/A1LTq4AOhXL4ftyFRG1ruOG4kI6Lfn3/n6/9RVC+vvc3Z3+2/1yb1jfNTlm93/RCOhojWqEePH1q/2CI3oGlxZHWNOFhw7ZVTxgxfYP5uVGkt0c6dzhRNuxyhnSO/3RZ/dXUdjgk5K/7OSTkj7WWxGFDf7yZR/yxZh7xxzosKU/UjlCo2vggJ7l2fPPbP5IXXnotUfSG9VLxfNqnjw52jcMd6VC0J+04q03dsdaNzuj7ak+DQNjUVdOqSL/5Vw98yE4YQKKMHmp6IV0GxHjUDt2ZHv7mjdK26lGzI72dbJhg3D12OV22jJxaRnFNa4MF0F/XswD6Y42Q9suaecQfb+YRf6zrRUinPeRO6xfuYqcJ6ag4ThPAf3ztrcD9I/rQvDjlcMc7+nraubcyegghXQLFpPB3rRteCVw9hr95gwzetNz4TM/o95+WQa0llNp8JlgA/fU5C6A/1ghpv6yZR/zxZh7xx7qIkNa8WVw7og+l07zRHen4ObMkAi6FtLYj6lkQdSvhsKH/8WhVYrUnGw597+5ATA9957bA3sad/yIQ1F1j/6eV/XgifKTxkc41cCKZ8JEuSjA5Pz7SbriqVXyk3bDFR9oNV7XaaD7S1Q4bqlhOi9qR5NpRyfWiiJBWtmmuHUkiHiHtboyXZrmakNaCBm9eHYjp4ctulNa1L0j3sD/pO4xo/Ke72ydkqgtCGiGdacAkJEZIFyWIkN5z7/1k8pQ93YBMsIqQdoMaIe2GayMKaa1zUvi7UJyGBxGr+UirnTByRtT9QsX2wdP3CeJAFxHS6tusdVi5ak1/oIjwsKEeMoyLbG2TXrh2uBvrhS3bCOmwkLbVT8owFdRv3SiDejZL1w7HyoadT5eNO/2ZdT0Q0ghp68GSkhAhXZQgQhohXf4YIvxd+UxDi4S/s2ebFD4uurtsI6SjYjpacjSssIa/ix82tPGRDg8JxgNFhHlVsN9+z2P9xapfdhgxBNcO+3HgPWXWR4QPe+tnwWHE9vf/Q3pbRvbvTm8e5e9BIN4hlVAgvo0lQLQ0gW+jJaiSkhG1oySQFmaYRywglZSEeaQkkBnM5InakcE8SRMIcNiwhGGRVUhrkS0bXw3C5KnLR0vXMtnccUD/YcTeluEl1GrgmWAB9NenLID+WGtJCGl/vJlH/LFmHvHHOiwJIe2fOUK6BOZ5hHRYbPt79waxp4e9fUvw0sadPhvsUHdt/8GjsUuo4oAwwQLorxtZAP2xRkj7Zc084o8384g/1ghp/6zDEhHSBdln8ZFOK2rQlrV9ofKMoB6ydpF0D53YvzvdPWzSNtnwkcZHuuCQFXykixJMzk/UDjdc1SqHDd2w5bChG65qtdGidrgjMfAtI6QL9nEZQjqswpA1/9UX3cO4fAzq6ZSucUeZw4hfMCHzPtdfS4Q0QrrgkEVIFwWYkh8h7QgsQtoZWIS0M7QIaXdo684yQrpgl5QppMOqDFt2U99hxJUPSO/gtmB3eqP52TT6IEFII6QLDlmEdFGACGkhakf5g4ioHeUzDS0StcMdWyyLIKRLGAVFfKTTim/pfOODw4idb8qWUfuY3ekzAlHdM2R0CbVuPBP4NvrrM3wb/bHWkjhs6I8384g/1swj/liHJXHY0D9zhHQJzF0I6bBa7SvuD3anh739i+Clzh1PCcR05w4nlFDzxjLBAuivv1gA/bFGSPtlzTzijzfziD/WCGn/rMMSEdIlsHcppMPq6WHEjpculsGbVpjvEVoDIb1+t3OMH/XHS2hBY5hgAfTXTyyA/lgjpP2yZh7xx5t5xB9rhLR/1gjpkpi78JFOq5qK6N7nviU3/+co+drkfw6SqcvH+l3PNW4fs4OHu7i4XB9ISarzomeelPXr1sghh39wo+B6AayFH90dt86XA2ccKhMm7uai6xJtErXDDWoOG7rhqlaJ2uGGreu5PUlIP73w0aAx02cc5qZRCVZrMbcTtcNb99a8IHakC3aBTyGtVQ0OG95yg5x9+GoZuvxOEy7v932CeuTe0rn9CdI5/gTZtN3hBVu1bXbXky1CGiFd6oA1xpYtfV2eWviYnPSZ2WWbTrWHkHaHGiHthq3ruR0hfaKM2368m85LsHrtD/5R5syZ4608nwXte9SZssfkiXLbvMt9FmtVFkLaClN6opoI6QXzZfbp50hL51sy9L27pN0I6qHv3hVUsre1I3D7UEGtv3tbRhVsoYjryRYhjZAuPEhjBhDSZRP9wN69d95K1A4HeIna4QDqVpPsSLtj68PyVdffIvc9/JSsXLVG/vU7fyPTpk7xUax1GQhpa1TpCX34SFerpgrpQFAbYa0CWy/dmQ5EtfnRHetGv1y7dqdkA54AACAASURBVDQ6nzLrj29jmTSr2yJqR3VGZaVgHimLZHU7zCPVGZWdYiBG7TjlzEvkmCMOlP96/mXZcfvt5DsXf7lsbIXsIaQL4evLXA9COmyGunqoy0fg9rHmqeDlLcOmSNfWHepGPpzIAljCYLU0wQJoCaqkZAjpkkBamGEesYBUUhLmkZJAZjBTVEg/uHZdhtLKS3rUqOQzXosWL5HZ510m86++VP742lvyvbk3ycMLriqv4BIsIaRLgFhPQjpszuBNy/sEtdmpDtw+ereYh7sMDVw+utSXeocTpadtbAmt92eCBdAfaxZAf6y1JIS0P97MI/5YM4/4Yx2WVFRID/qvZ/1X2pTY+9H9E8sN3TpC32j1lVZRXU/uHQjpgkOmlj7StlVvf+9eI6b7RHXLxteDbJvGHBy4fHQZQb151H4VTeEjbUs6ezqidmRnZpMDH2kbSvnS4COdj1u1XPhIVyOU/318pO3ZHf3yEvvEJaZ8YM9kv+fQreP8L50alPbFC66oO/cOhHTBgdAIQjps4pC1z0u7CmrjR932/uPBy93Ddu2L9mEEddcOn0ykgZAuOEgqZEdIu2GLkHbDVa0ipN2wRUi74apWEdLu2Lq0HLp1xMsYO2ZUXbl3IKQLjoJGEtJhUwdvfj/YoQ6jfQzq6TQPeWnZejDxxMD9o6dtx34yCOmCgwQhLT+/ca6ccfbX3IGMWUZIu0ONkHbDFiHthitC2h1X15bjbh1heerecflFZ8nM48sN9Zu3PQjpvOQi+erRR9q2We0rfhu4fLQvv0taN/Z9pbN59PStu9QnBH/Xy4Vvo7+ewLfRH2stCR9pf7yZR/yxZh7xxzosqaiPtP8ap5d4xMzz5bRPHy2hW0eYUt079PrxlRfWRXUR0iV0QyML6bD5reteDFw+hhpB3fb+I8HLuivdF4/a7FIbf2rdta7lxQLojz4LoD/WCGm/rJlH/PFmHvHHeiAKaf/08pWIkM7HbZtcA0FIRxukO9Qj3phr/Knv7X95c8d02bjjTOnc8dOyZcSflkAtuwkWwOzM8uZgAcxLLl8+dqTzccuTi3kkD7V8eZhH8nErkmsg7UgX4eAzL0K6IO1G9JG2bXLrhj8aQX2NvP7iY/Ls+3vJrAnzg6zdwyYZ149jzeFEE/Vj3NFBWL2yr0XPPCnr162RQw7/eL9p1wtgLQ6kcNiw7JHTZw8faTdc1So+0m7Y4iPthqtarcXcfsv8eXLkMTwi3F2v1o9lhHTBvhjIQjpE89ori+SVRb+TU//0OeP+ca8JofdaPzUV0ZvGHRH4VHcZcb1l+O4FifZlR0iXgjHRyA3Xfl8+d/q50tbenlpImTtJm7q6OGxYpTvz7kg//shvZcTIDpl2wEHuBkzMMkLaDWqEtBuuCGl3XLHcRwAhXXAkNIOQ3iZqh3mwS9uqx83PE0EIvbbVj8vgTSu2jqbBJj71IbJp9MHm8eTmt4lV3dM2PhdhhHQubFaZENJWmDInemnxIln21pty5CfMeYKMF0K6MrD5N14jn5o5W0Z1jM5I9sPJbb/ZuvYH/yhnf/VvC5dnawAhbUsqezp2pLMzI4c9gZoIaT2JuXLV2sRaPv/gPPva10nKgeYjnQVr64ZX+gS1EddDVj8hGqs6vLqH/UmfoN4qrDePSn5ykW15tgugrT3SpRMoc0caztUJ5BXS1S2TIk6AecTfmGAe8cc6LAkfaf/MvQtpfUrNuLEddRO2pAzkzSyko/wGbVnbt1NtBHUorgd1rw+S9A4e1r9LvdnsVG8afYj0DMm2u8QCWMZotbPBAmjHqaxUCOmySFa3wzxSnVFZKZhHyiJpbwchbc+qrJTehXS9BdIuAyRCOpnikLXP9e1Uq7g2v/XwYnhtGbH31t3qGcFv/b/axQJYjVB577MAlsfSxhJC2oZSOWmYR8rhaGOFecSGUrlpENLl8rSxhpCOUPrmt38kt9/zmMy/+lKZNvWD577rLvorry4NUu4xeaLcNu/y/lxN5yNtM6oS0gze9G7fbnXgX93nYy293UFK3ZnerO4f6l+tu9VGWD/77PNE7cjJulo2fKSrEcr3Pj7S+bjZ5MJH2oZS9jSun1qbJKSfXvhoUNHpMw7LXuGcOfCRzgmObFYEvAtpFaXHHHHgh55UY1Vbh4kW3P2I/Nv8uwLBHBXS+gSdFSvX9IvnuGsKQjpfp+judLuJAKIPgWlb8bAEjynfenUPnSiPdv6ZrOrdVT522BGyeeQ+5lhsq7jeSarFZEv4u3zjp1ouwt9VI5T/faJ25GdXKSeHDd1wVau1mNsJf+euP+vNsnchrYL1e3NvkocXXFVXLNTlRAX07PMu20ZI68HIr587q/+Z7vH6I6SLd+Og7nXSvvJh8wAY82RF89PSuVQeX3WIrN48Ro7b4e4gTvUWI6YH7fAx2TRyP1k/4qP94rp46R9YqMVki5Auswc/sIWQdsNVrSKk3bBFSLvhipB2x9W15UWLlwSaLH5dftFZ/ZrMdR1s7HsX0ipYK121iNqhu8z/a/YJsvuknbcR0mEnRneok17DR9pmqNmnaV37ghHUd5pDi/8pQ9Y8HQjr+BWK601jZhhRvb9sHjPdibi2r/XASolvo9/+xEfaH2/X32z5a0n9l8Q84r+PBpKPdJLeUhfcRxYuqqvNWO9C2v+wqlyidso7770fRBGJd5qtkK63Ng24+qx5UWT1C1t/THi94G/ze6uPdX97h5qY1aONG0iH+Rmzb99v/V9f54IABCAAAQhAoGEIJGkw9Qq45LvXSS02XdPANbWQjrtp5BXS7Ej7+VxGd5Ja178kretfNHGrXwh+t657QYaY39KzZZvK9LRtbyKCTDW71XsH7iFbzO/NI6fmflCMn5bWvhR2kvz2ATvS/nizI+2PNfOIP9ZhSYV3pN950H+ltcQdj/pQuUlCWs+t6aWbn/Vy1URIh3cUUQi18HlJqkdYp3O/cHJwIDLJRzp6N4SPtJuhnOfJhoG4XmfEtRHV+rt1/WLz92Kzcx0X1+P6xLUJubdlVCiu95EHHn5KJuy8i+w1dZqbRiVYxUfaDWp8pN1wVav4SLthi4+0G65qtRbnXxr2sOHPBrnriEqW/6I3VUjH3wj1WW0q+uFSvQvpq66/Reb+5PZtDvSFdx21hpN290PUjpfl5Refk2NP/Iy3cZtHSCdVTh9f3rZ6ofG1/r35+a9Un2uNCnLrii/IxO3bZOqUHY3Q3l26h06SLcN3N7vX45y1GyHtBi1C2g1XhLQ7rghpd2wR0hnY3n90hsQlJv3EA6lCOnpODdcOg0l3eE/79NEfCn+nAvvmXz1QUwfyJCGtPUsc6cYV0lnE9W3vzJRJw16VAzqe2SabxrkORLWKayOsu4fuZgT2lEBkdw+bVGgmQUgXwpeaGSHthitC2h1XhLQ7tghpd2xdWk7TZGGUtejzPlzWo5pt7zvSaU82rMe7jGrwwvfxkbYlVSydS99G3bkesvppad34R2nZ+HrwFMbg7w2vi4bnS73MTnYgqIcbcT1sd/MzxfxtRLf5u3vElCB0XyNe+Db67TV8pP3xdjmP+GtFY5TEPOK/nwr7SPuvcmqJSUI69Gpo6sOG9bwjnXf8IKTzksuWrxYL4KCeTSb83uuBuG7pfMP8Nj/BbyO2t74W98EOW6UiunvYbn0/Q3fp28kO/t81+FtfN0+ayQbBU2oWQE+gtxaDkPbHuxbziL/W1VdJzCP++2MgCuk4xXoS0Vo37zvS9ewjnXfII6TzksuWrx4XQN2tbt2wxBxsNLvXna+ZHWzzt/lp2fhasKtd6QpcRnTn2jzJsad9nHS3TZTu9r6/e4aY/4PXd6zJrjYLYLaxWTQ1QrooQfv89TiP2Ne+sVIyj/jvr4EkpP3Ty1eidyGt1ayXqB35kG2bi6gdZVD8sI2yDhtmqV3pfnQmWkirEdQt6424TnEZueHNM+XIcQ/KZOObnXap4O4Zsn2fsG7bMTj82NM2Pvi/u22nrf8b4W3pr33Dtd+Xz51+rrS1t6eWWeYCuKmrS35+41w54+yvZemOQmnxkS6Er2Jmona4YYuPtBuuarX0ud2iqg0btcOibSTZlkBNhPRA6gSEtJveHBBCugqawV3vyB23L5CD9x4uu41eL+qnrW4kgze9Jy3mvcGbzf9GiGe5AqGtu9sqvI2w1p3tnvbxfTvc5n99/fqf3yOfO+M8hHQWsBZpX1q8SJa99aYc+YkTLFJvmyTvjvTjj/xWRozskGkHHJS5zLwZENJ5yVXOh5B2wxUh7Y4rlvsIIKQLjgSEdEGAKdmbQUhr022idqjAHry5T1yrsFaBPXjzSlEhro9Pb9n0tvnbvLbpHavOuOKPF8nX/uT/ytDBnf272IHgbh0p0tIe7HK3DB4kLaMmy8au7mDHu7dlhPkZGuyI66W74b3moGVv6xgj0kdXLJcd6erdgpCuzGj+jdfIp2bOllEdlcdaddLmoacj22TT5m7ZYMZ2pevaH/yjnP3Vv7UxWUoahHQpGBONsCPtji2WPQppjdahcaI1hnSlq96cyG0GCT7SNpSKp7FdAIuX1LgWVFgHQrvTiGwjsIP/txjRrWJcRXfw/nvmZ3W5jTSiWsX1tiJbXVLGiAxuCfy/9erz+W43onxkf3zuLVtdUmrlD14uiHzW8grpfKU1dy7mEX/9X6aLmL9aN3ZJ+Ej77z92pEtgjpAuAaKFCRZAC0i2SYz/9uAt62TQlrVBeL/BW3+Hf7f1bpC2Qeukc/3q4P1BmrZ7bV+6/r/D/OtlUE+XbckV0wUi2+yMB0I7+D0q+L+n1fze+nfwnvnp1df0vfB183/w+tb3gh12I/Ab4UJI++sl5hF/rBHS/liHJSGk/TP3LqTT4kjXwwNZ8uJHSOclly0fC2A2XkVSZ10AB/V0Bq4meukBS710FzwQ4UZkh++1bFpqtqW7zY74KiPIjUg3gl53yfUKfsce516kDWHePtcUI6q3Xj2tW3fKt/6vbis9bdv3v69iPnRhCV4cZHbUt+62h4niBztDV5d4fW1cXzQPQrqMnrazwTxix6mMVFnnkTLKbHYbCGn/I6BuhHSjPpAFH2k3gxYfaTdc1Wq9R+1Qt5NBW4zQjohs9f8e1N1pfvoOZfYJ79f7fhsXFuk2Yt3slKtbi15vrBwkD604Ss7YZZ47kDHLz6w5QF7bOFlO2XFBpjJVhLe0DJHunt7EfEE8cuMSk3Td/9qe0tHeKQfutmGbm4WktBq7vNIV3ECklBPm0xuOXz+6VPaesr1M2WVsornQVSetrKhbjy0ofKRtSWVL9+oSt0+tTRLSTy98NKjk9BmHZatsgdT4SBeAR9aqBOpGSH/z2z+SRxYuqukjwqvSSkiAkM5DrXoehHR1RnlT1LuQztuuaL5o+DvdDdcd8/AK/MUjT6vUnXHdIQ+vqFjX1wb1frCj3ve/cYvZuose5tFd+N+v3ENe3zBBPr3Lwx/YMjcEpfujRxr6m3ePl9FDVskhYx4vA5uVjZuWzZaPjHpG9h75olX6PIn0GwE93BpeP3jxs/L5KXfJmLYKTxk1ifWGo9rTRFtbBklvb6+5calcs+8+8XH5xlGVY8HnaVtanuXr2uSuF3eUMw56o0yzFW29/N4Iee7d8XLyRysfvMxbodaWwTKkdVBwaDm8fvdKS/Dnx/ZwU2ZSXX/zXKvsPH6M7DNpeN6mZM73s9++J8ceOFp2GD0kc968Gb5/6zKZM2dO3uzky0nAi5BOihudVN/LLzpLZh5/eM6m1CYbQtoNd4S0G65qtdmEtDuS21rOG/5OXVp2HNMq77z/gdiPWtabAI3YknQ98vRrMnJ4m0yf0lb5UfYmsz6Ns9IVv2FISquhGW9dPEX22+Ft2Wu7dxPNha49aWUFfvhbv1Ww7Zvvv/q/5YyJ82SMuWnwdX3r5b+XOXv+va/i5O2uneS2d2bKObvN9Vbmi+v2lt+vPUBmTZjvrcyHVh4VlHXk2Ae9lalcJ5lY/Qd0POOtzGtePzf4dmqndvONmacrGLMIaU+0PyjGi5COtirNR9p7y0ssEB/pEmFWMIVvox/OWgq+jf5Ya0n4SG/LO/4tgm1v6A1H9NuHpHwjhw2RzVt6pMuEwKt0xb+psK1Do6XrO5vgZnc4aUe6Nny6+89i1KZ8P6V2jj9Jxk49zU9hlNJPwLuQHojsEdJ+ehUh7YczQtof57AkhLQ/5swj/lhzQ+6PdXQu8V9qc5eIkC6h/xHSJUC0MMECaAGppCQsgCWBtDSDkLYEVUIy5pESIFqaYB6xBFViMqJ2lAjT0pR3Ib1o8RKZfd5lqdVrtAey4CNtOdIyJsNHOiOwDMnxkc4AK0PSvD7SWkReIc0jwjN00NaktkKaJxtmZxvPQdSOE2Xc9uOLg7S0oGMWH2lLWCUm8y6kj5h5vhw+Y5ocPH0f+d7cm/qjdJxy5iVyzBEHyvlfOrXE5rk3hZB2wxgh7YarWkVIu2GLkHbDVa0S/s4NW8LfueGqVm+ZP0+OPAYh7Y5w/Vj2LqTDw4a7T9pZ/uqb/9wvpDWyR1RY1w+iyjVBSLvpKYS0G64IaXdcEdLu2CKk3bBFSLvhipB2x7UeLddMSGuYOxXVoStHoz6QRTsVH2k/Q9v2K1k/tRnYpeDb6Ld/87p2+K3lwCiNecRfPzKP+GMdloSPtH/m3oW0unDss9ck+c7FX5bo3436QBaEtL9BywLojzULoD/WWhJC2h9v5hF/rJlH/LFGSPtnHZboXUjHm6q70uE1/+pLZdrUKbWjkbNkdqRzgsuYjQUwI7ACyVkAC8DLkRUhnQNazizMIznB5cjGPJIDWsEs7EgXBJgje82FdI4611UWfKTddAc+0m64qlUOG7phi4+0G65qFR9pN2zxkXbDVa1y2NAd23qz7F1ID7QnGyKk3QxphLQbrghpd1wR0u7YIqTdsEVIu+GKkHbHtR4tI6QL9gpCuiDAlOwIaTdcEdLuuCKk3bFFSLthi5B2wxUh7Y5rPVr2LqQbNV50pc7DR9rP0Ma30Q9nLQXfRn+stSR8pP3xZh7xx5p5xB/rsCR8pP0z9y6k9cmG0fjR/ptcfokI6fKZJllkAfTDGSHtj3N08XtrxUb/BTdhicwj/jodIe2PNULaP+uwRO9COhqlI6nZjfaIcG0DQtrPAGYB9MMZIe2PM0LaP2vmEX/MEdL+WCOk/bOumZCuXVPdlIyPtBuu+Ei74apWidrhhi0+0m64qlV8pN2wxUfaDVe1StQOd2zrzXJNdqQvv+gs0ScbRq+rrr9Fbv7VA/2PDK83UGn1QUi76SmEtBuuCGl3XBHS7tgipN2wRUi74YqQdse1Hi3XjZBu1EeEI6TdDGuEtBuuCGl3XBHS7tgipN2wRUi74YqQdse1Hi3XjZDmEeH1ODzqq074NvrrD3wb/bHWkoja4Y8384g/1swj/liHJRG1wz9zL0I63G2u1rwkl49qeYq+rwL+9nse28ZM/MCjhux75dWlQZo9Jk+U2+Zdvk16DhsW7QW7/CyAdpzKSMUCWAZFexsIaXtWRVMyjxQlaJ+fecSeVVkpEdJlkbS340VIR6tTb082VJH8Dxd+SaZNnRJUM+6r/cULrpAVK9f0i2dNP25sh/z4ygv7m4WQth9wRVKyABahly0vC2A2XkVTI6SLErTPzzxiz6poSuaRogSz50dIZ2dWNId3IV20wq7za5zr2eddJvOvvjQQ10fMPF++fu6s/sORurv+vbk39R+KxEfaTY/gI+2Gq1olaocbtvhIu+GqVvGRdsMWH2k3XNUqUTvcsa03ywjpWI/oDvTLS94MhHJcVGvS+GsIaTdDGiHthitC2h1XhLQ7tghpN2wR0m64IqTdca1HyzUR0rrLu3LV2kQetXogS7ROYR1shfRFF/+dbNrc46V/16xeLTff9FM568tf8VKeFvLKyy/JC88/KyfP/HNvZT795EJZs3aNHHX0Mf1l6teE3T29snmLG9a/uesO2WXX3WTf/fb31s5fzP93OeSww2XXXSd5K/OH/3KlnHXOX0l7+9DUMltbBsuQ1kGysau7cL26ujrlumv+Vb7y1xcUtmVr4I03XpPHH31EPjv7L22zFE73/HPPyptvvC7HnXBSZlujhg8JHuyU9XrwgfukY1SHTD9oRtasudPfvuCXss+++8see+6V20bWjNf96Idy2qzPS8fo0Vmzfii97Txy5T99Wy74xsWFy7M1sHz5O3KPmYM+f8aXbLMUTud6bk+aR3732MNBvT926BGF629roBZz+09vuF4+aeaC8eN3tK1m4XQ6ZufMmVPYDgayEfAupJN8jLNV2W1q9ZGe+5PbRcW0jZDW2nRt7vYmpN22vr6t2y6A9d2KxqhdmUK6MVpc21rmFdK1rXVjls484q/fmEf8sQ5L0rmEyy8B70K63g4bJuHWOlbykb7ku9cFQju8OGzoZ9BySMgPZy2FQ0L+WGtJHDb0x5t5xB9r5hF/rMOSOGzon3nTC2l16VB/6PCKx7Mmaof/QZlWIgugv75gAfTHGiHtlzXziD/ezCP+WCOk/bMOS/QupNW145gjDpTzv3Rq7VodKTkaIzp8OUscaQ4buulGDhu64apWidrhhi2HDd1wVascNnTDlsOGbriqVaJ2uGNbb5a9C+l4+Lh6A5K1PgjprMTs0iOk7TjlSYWQzkOteh6EdHVGeVMgpPOSq5wPIe2GK0LaHdd6tOxdSKv/caWrVlE78nYOQjovucr5ENJuuKpVhLQbtghpN1zVKkLaDVuEtBuuCGl3XOvRsnchXY8QitaJw4ZFCdrlx7fRjlMZqfBtLIOivQ0OG9qzKpqSeaQoQfv8zCP2rMpKyWHDskja20FI27NKTYmQLgGihQkWQAtIJSVhASwJpKUZhLQlqBKSMY+UANHSBPOIJagSkyGkS4RpaaomQjp6wO/yi84KHr+tLh8HT58qP77yQsuq108yhLSfvmAB9MNZS2EB9MdaS0JI++PNPOKPNfOIP9ZhSQhp/8y9C+noA1k09NzXz50VCGl9EMrNv3pgm1B0/nFkLxEf6ezMbHLgI21DKV8afKTzcauWCx/paoTyv4+PdH52lXLiI+2Gq1olaoc7tvVm2buQTnvYiUbziD/opN5gJdUHIe2mlxDSbriqVYS0G7YIaTdc1SpC2g1bhLQbrghpd1zr0bJ3Ia270P/6nb+RaVOnCDvS2YfE2jWr5dcL5svs08/JnjlnDteTbVK1ENI5O8siG0LaAlKOJAjpHNAssyCkLUFlTOZ6bk9y7Xh64aNBLafPOCxjbfMnf+j+u2TCzrvIXlOn5TeSMSc70hmBNXBy70I6+uTAUEjvPmlnmX3eZXLyJw+V71z85YbDiY+0ny7Dt9EPZy0F30Z/rLUkfKT98WYe8ceaecQf67AkfKT9M/cupLWJoRtHtLnnfuHkunnaYdZuQEhnJZYvPQtgPm55crEA5qGWPw9COj+7rDmZR7ISy5+eeSQ/u7w5EdJ5yeXPVxMhnb+69ZkTIe2nX1gA/XBmR9of5+gu0lsrNvovuAlLZB7x1+kIaX+s2ZH2zzos0buQ/uIFV8gTTy+W+BMMGzX8HYcN3QxefKTdcFWr+Ei7YYuPtBuuahUfaTds8ZF2w1Wt4iPtjm29WfYupNUv+rRPH/0hNw7C39kNDQ4bdsuGrm47WBlT1eJAyh23zpcDZxwqEybulrG2+ZMjpPOzq5QTIe2GK0LaHVeEtDu2CGl3bOvNsnchrTvP4UNYojAIf2c3NBDSCGm7kZKeCiFdlGByfoS0G64IaXdcEdLu2CKk3bGtN8vehfRA25HWDsVH2s+wxrfRD2ctBd9Gf6y1JA4b+uPNPOKPNfOIP9ZhSRw29M/cu5BWF465P7ld5l99aRBLWq9Fi5cE4e8aNXIHQtrPwGUB9MMZIe2Pc3Tx47ChH+7MI344M4/44xwtCSHtn7t3Ia1NTAp/l+Tu4R9HvhIR0vm4Zc3FApiVWP707CTlZ5cnJzvSeajly8M8ko9bnlzMI3moFcuDkC7GL0/umgjpPBWt1zxE7XDTM0TtcMNVreIj7YYtPtJuuKpVona4YYuPtBuuahUfaXds680yQrpgjyCkCwJMyY6QdsMVIe2OK0LaHVuEtBu2CGk3XBHS7rjWo+WaCGk9cLhy1dpEHvH40vUILVonhLSbHkJIu+GKkHbHFSHtju3PbrhGDjr5z2XYqI7ChQwf3iqvbdwkXZsrh9F87rofyH5nfbVwebYGOle8J6/9x30y/NN/ZpulcLrNr78qm1/5gwz/+HGFbSUZGNI6WNrMz/rOLf1vdz3zlKzp7ZGu/T/qpMwko0Mf+w/p3nGCbN59T29lDrtjgbx+yGHSud1Yb2Xu87N5MmfOHG/lUVAfAe9C+pQzL5FxYzvkx1deOGD6AB9pP12Jb6MfzloKvo3+WGtJUR/pld3dst4IjUrXsi1bpFt6U5N0mrfe7d5c0cbKnh7ZUKWcN0xdKl3re7plZXflur7fu0XW96TXVe2/saVyXf32BqVBoDEJfH30WPk/U3ZpzMo3cK29C+m0ONINzJDwd546DyHtCfQAFdJxgaq7YmsiQnF9b68RhZGdM8Ph3cj/W2SQLIv8HwjAzdsKwDeriNcuU+byKuLUXy83TkkjBg2WsS0tpVS4bfBgmWBsVdH/pZSV1cjYlsEyYnA57cxatov0LYMHSWvLILP7v+3N1q4l9aWLOpdls23QIBnvuS/3bR8qx+40pqwmYMeSAELaElSlZOxIlwDRwgRC2gJSSUlqvSMdFZxvbt2t1B1U3QHtigjcZT1bZEvvIFljXl9tlFH3oF7R3Vq9VPRuMeK40S4VjCocK10TWlulxbQ77Rpqsu/QMqSijbFGUI4wi32la5eW1orvq+hTO5Wu7Qa3GnFYuZxdWyvXtcw+ZB4pk2ZlW7WeR/y1tH5KImqH/77wE93k2AAAIABJREFULqTVteOYIw780CPC/Te9nBLxkS6HY9wKPtJuuKpVV1E7VLSGO7bvml1XFcO6y7ti4wZZ+8ufyZpZnw8apTuyKoajbgHhTq6NW4MNmcnvvSdHvbRY5h16RH/yuEDtMGK1I7JjpGJvbEQ4tpuc4yM7Z7pPOCEmLKMC8H1TXu87y2T/o9P9TdtNmVGbYeXyhr97/JHfyoiRHTLtgINssJSS5t47b5U9995PJk/x52/KYcNSuu5DRjhs6IarWiVqhzu29WbZu5DWGNLfm3uTPLzgqnpjkas+COlc2KpmQkhXRZQ7QSikW9vaAqG7Tnd6pcf87g3E7TrzWtfgXtlkNhqXm0NZ682m7vpe87p5f515X/13g7Th7615OlP8bYca94f/fd9v5LsnnGRVZ90DHWF2OUfqjxGewd+DWsz/g2S4+X+k2UUdaQSwCl99X9PpDq7+aBpN2/X2UvnvJx+XT31mtgypsutqVSmLRBw2tICUMwlCOie4KtkQ0m64IqTdca1Hy96FtPpIV7qI2lF5mKxds1p+vWC+zD79HG/jyfVkm9QQhHS+7g1dItS9YaURuO/qj3FxUBcIPRSmrx1z6y/k3447UZZV+Uo+Tw3CHdqxRuiq6FUXg526e2WP238pG2Z9ITC5nYpgI27bTfmhD2HgqmB8kEeb9zpKqNeypa/LUwsfk5OMkPZ1IaTdkUZIu2Hrem5Pcu14euGjQWOmzzjMTaMSrD50/10yYeddZK+p07yVyY60N9Q1L8i7kK55ix1UAB9pB1ATTDazb6NGNVARrGJYozG8acSx+gyrK4S6SqhLhQrmatEeknpK3RVajbANXR1ajTvrLma3Wg8Jje42gtf8r6JYfWFbTLqdt7o37GB+t5v/yzwI5mck1V8peV076q8l9V+jZp5HfPcOPtK+ifdFAOLySwAhXQJvhHQJEC1MDLQFUHeP/3vzFnnf7BarUF5uhPL7Ko7Nj0aD0LBhKpJVLGe5dFd4B+Pbq7vC6vOrJ+R1F3i8+VvF8C7m/TRf3bAcFsAsxIunRUgXZ2hrYaDNI7btrkU65hH/1BHS/pnXREirn/Ql371um9ZeftFZMvP4w/0TKKFEhHQJEC1MNOICqCL4VSOS3zC7yK9u3iSvBv+b3+bvLGHQ9IDaDib6gR6Ym2CEsLpEbGdEsQpm3SHW3eE+4VxO6CwWQIsBWWIShHSJMKuYasR5xB+dcktiHimXp401hLQNpXLTeBfSV11/i8z9ye0y/+pLZdrUKUFrFi1eIrPPu0zO/cLJDRfNg8OG5Q7I0Foj+UjrbnIgjo1f8pvm578DodwnnteY3eVK17m/e1Te2Hd/GTphYiCCtzOuEupqoT7Dups81hyc07/LvFxF7Uir46auLvn5jXPljLO/VmYzKtrCR9odaqJ2uGG74r3l8tB9d8qps890U0CCVXyk3aHGR9od23qz7F1I6+PBT/v00R8SzCqwb/7VAw0XzQMh7WZI15OQ1gN7S40wXmp8kDVM29JAMBs/ZfOz1LhlrKrwZAd1p9jFCOGJwe8hwU/wt4nxq38/dNtNcuCMQ2XCxN3cgEywipB2g5rDhm64qlUOG7phi5B2w1WtIqTdsa03y96FdNqTDUN3D6J2VB4iRO3olg1d2XyGbT506q98l9kN6hq/o7w9eUomFwzdSZ5sRPGftLYF4nh3I5x3NUJ58pC2xJjB0frccet8hLRNB2VMw450RmAZkrMjnQFWhqTsSGeAlTEpUTsyAiN5JgLehXS97Uh/8YIr5ImnF28DLS7m9SEyr7y6NEizx+SJctu8y7dJj490pjGXO3FZvo0qml80PspPd3XKC1u65PedXfIH445R6Sl4k41I3tUIZBXM+qMH+iYP6fu72lPocje4hhnxbfQLHx9pf7zLmkf81bhxS2Ie8d93+Ej7Z+5dSNebj7QK++jDYb757R/JIwsX9b+mQnvFyjX94llF9bixHfLjKy/s7y2EtJ+Bm2cBzCKaVSzvbcK+qTjWRyPr/38ypM8NQ8PDNdPFAui3txHS/njnmUf81W5glcQ84r8/EdL+mXsX0trEeo7aER58DA9DqtD++rmz+iOKJD2ZESHtZ+BWWwA1CsYfNnfJS2a3+aVN5rfxZ9a/V8XCx7WZmMh7md3kvYxQ3qut3fxtfpv/1TWDq48AC6DfkYCQ9se72jziryYDvyTmEf99jJD2z7wmQtp/M+1LjB56jItqtRJ/jcOG9myzpKx22PAdc/BPRfIfNm2Sl417xkvm4N8fjHheHYuS0WaelvenZpd5ryHtsqfZaf7TQDirS8aHRXMt/Ojwkc4yKuzT4iNtzyprSnyksxKzS4+PtB2nPKlqMbdz2DBPTzVmHoR0pN9CkRzGtLYV0nPmzPHW+6tWrZIbbrhBvvY1f6HEXnzxRfn9738vs2bN8tbOxx9/XFavXi3HHXecvGUiZjy/0fgzmzBqLxh/5uDvzk55P7bTPNS4X+w7bKjsM1R/2mXf4PdQ2b3dbqf5tttuk0mTJskBBxzgrZ3al0ceeaRMnjzZW5lXXHFFMH6GGjY+rk7TV9///vflwgs/cIdyXe6rr74qDz30kJxxxhmui+q3/8wzz8hrr70mp5xyircyf/Ob38jo0aPlkEMO8VbmTTfdJB/5yEdk77339lamjh/tyzFjxngrUzdJfM7tb7/9tugcdM4553hrYy3mdv1c6qXznq+rFnP7NddcE8wFO+20k69miu8x661hdV6QNyEd+kYnxYqu9J4vfkmxrG2F9AXfuFjWbtziparNELVjmQkvd/fTj8t7a1bJvSbGctpBQN1V3tfsNk9vGxr8/kjbMOkwDynJe9Vi14Id6by9VTkfO9JuuKpVdqTdsGVH2g1XtVqLuZ0daXf9WW+WvQnppEN6URjxQ30+QYU+29GHxITlJ/lI61MZo5E98JEu1lsaLUMjaNzfuUHu61wnLxp3jfilovmjw4fKR4cMlb3MQcCiorlYjQd+bnwb/fYxPtL+eOMj7Y8184g/1mFJ+Ej7Z+5NSKfFjw6bXKs40kmHBysJfKJ2lDNI9dHZD3Sul/s3bgh+R58AqOHkjho2/EM7zSyA5bC3scICaEOpvDQI6fJYVrPEPFKNUHnvM4+Ux9LWEkLallR56ZpaSIeuG0k4Qz9pfY840sUHXKf0ypOdG+XJro3ylDkU+J/m99qtBwM1tNyBxj3joPZhcmD70ODv7c1DTuIXC2DxfrC1wAJoS6qcdAjpcjjaWGEesaFUThrmkXI4ZrGCkM5Cq5y03oR03EUiXv1qO8PlNLd8K0TtSGf6momk8dSmzq0CulOeN6Hpwmtn83CTUDwfZITzAUZAR69qUTvK78na+NHhI+2iJ0XwkXbDVa3iI+2GLT7SbriqVXyk3bHFsog3Ia0POnnhpdc+9FTAsBOq+VDXa2chpLftmSeNr/OTm8zOs9l9VhGtsZ3D6wAjmP/HULPrbELR6c7zziYcXdqFkHY34m+49vvyudPPlbb29tRCytxJ2mSirfz8xrlyxtn+Is0gpN2NH4S0G7YIaTdcEdLuuGK5j4A3Ia2F6a60XtEnCYavr1y1dpsDfI3SQc0upJebeM5PGleNwG3DCOinjJAOr+0HtwSCOXTZ0N8fdthI7mmEtLtPAELaDduXFi+SZW+9KUd+4oTMBeR17Xj8kd/KiJEdMu2AgzKXmTcDQjovucr5ENJuuCKk3XHFcg2EtBapO9O33/PYNvwPnj51m0duN1rnNFvUjueMi8aTJjZw4LZhfJ1fNy4c4bWPeUpgKJx193mSebx2WRe+jWWRrG6nzB3p6qWRIq+Qhlx2Aswj2ZnlzcE8kpdc/nz4SOdnlzen1x3pvJWs93wDXUh39fbI783X8w8a0XzfhnXb+Dpr38wwgvkos9t81LARJiydu4d8sAD6+ySwAPpjrSUhpP3xZh7xx5p5xB/rsCSEtH/mCOkSmA9UIa3+zfPWrZafr1u1ja+zPvTk2GEj5UgjoI8eOkLGJkTYKAHrh0ywALqgmmyTBdAfa4S0X9bMI/54M4/4Y42Q9s86LBEhXZD9QPSR1oejXLd2lfx64zrRh6XsvewtOXTpmzLK+H7qzvN04/esIetcXvhIu6OLj7QbtvhIu+GqVuffeI18auZsGdUxunAhtkL62h/8o5z91b8tXJ6tAXykbUllT0fUjuzMyGFPACFtzyox5UAR0kuNn/N95uEo+mTB35rfeo00D0Y5xrhr/M93l0vHklfkhE+dWpCWfXaEtD2rrCkR0lmJ2aVHSNtxypMKIZ2HWvU8ry55WV5+8Tk59sTPVE+cI0XSjvTTCx8NLE2fcVgOi/myIKTzcSOXHQGEtB2n1FSNLqSfUr9nFdAb18sLW+M872Eex60C+pjhw+Vj7cPF9WSbBBchXXBgVsiOkHbDFiHthqtaRUi7Yet6bkdInyjjth/vpvMSrOq3KHPmzPFWHgX1EUBIlzASGs1HepN5yuC9G9ab3WcV0OtEH9et1xHG3/kTxu/52OEjZLIR0/V22X4lW2/1bsT64Nvot9c4bOiPN/OIP9bMI/5YhyVx2NA/c4R0CcwbRUjrkwZ151l//sOIaL22MwcFjzEC+lizA/2JYcNlqHHnqNeLBdBfz7AA+mOtJSGk/fFmHvHHmnnEH2uEtH/WYYkI6RLY17uQfiJw3+gT0C9t3hS0eGpbWxB5Q0W0PjSlES4WQH+9xALojzVC2i9r5hF/vJlH/LFGSPtnjZAuiXm9+kiv7+nuc90wLhz3mgOEa3t6gxZ/3Ow6H7NVQE9sbbWi4NqPLqkS+EhbdU2uRPhI58JWNRM+0lUR5U6Aj3RudBUzup7b8ZHGR9rNyK0vq+xIF+yPehPSS7ZsMuJ5gxHP6+Wxre4b482juo8xfs+hgG7JGLnO9WSLkD5UJkzcreBItM+OkLZnlSUlQjoLrWxpEdLZeNmmdj23I6QR0rZjsZHTIaQL9l69COnHuox41ugbZgdaxbRe+7e194nn4ImD7blb6nqyRUgjpHMPzpSMy5a+Lk8tfExO+szssk2n2kNIu0ONkHbD1vXcjpBGSLsZufVlFSFdQn/Uykd6TU+PEc/r+l04NphHeetRwSB0nRHQxxo3jvEtdu4bJWBwbgLfRueI+wvAt9Efay2Jw4b+eDOP+GPNPOKPdVgSUTv8M0dIl8Dct5D+wybjvmH8njX+80JzkFCvia1DTOi64UH0jY+bn4F4sQD661UWQH+sEdJ+WTOP+OPNPOKPNULaP+uwRIR0Cex9Cen1Zsf5ytUr5d/M47u7zKO79ZpgdpzPHDVa/mLEaBlrQtkN5IsF0F/vsgD6Y42Q9suaecQfb+YRf6wR0v5ZI6RLYu7LR/ruDevk795/VzauXSNnPvawPHXSZ+TMkaMDN47WQRlPD2Zsu2s/uqTqELUjYydlSM5hwwywMiTFRzoDrIxJ8ZHOCMwyueu5HR9pfKQth2JDJ2NHumD3uRbS/2lcN+avXyvz160OanqCCWN36IP3yxfPPK9gze2zu55sEdIcNrQfjXYpOWxoxylPqnvvvFX23Hs/mTxlzzzZc+VBSOfCVjWT67kdIY2QrjoIB0AChHTBTnQlpFeYONAqnm8yIvqP5iEqk1qGyOxRHfLpHpEnbv+FzD79nII1t8/uerJFSCOk7UejXUqEtB2nPKkQ0nmoVc+z4r3l8tB9d8qps8+snrikFK7ndoQ0QrqkoVrXZhDSJXRP2T7Sd5snEKqIvtf81uvPR3TI7BGj5GPmMGEzX/g2+ut9fBv9sdaSiNrhjzfziD/WzCP+WIclEbXDP3OEdAnMyxLSL5ud5/nr15if1bKqu0emm0d3zwpEdIdzP+gSMDg3wQLoHHF/ASyA/lgjpP2yZh7xx5t5xB9rhLR/1mGJCOkS2BcV0t0mAkfoB/30pk4ZM3iwzDYHCWeZXei9huR/kEoJTasrEyyA/rqDBdAfa4S0X9bMI/54M4/4Y42Q9s8aIV0S86I+0o/rYcJ1a+QXZidar0+aKBy6C3388JGJNVy7ZrX8esF8fKRL6r+omYfuv0sm7LyL7DV1mgPrySbvuHW+HDgDH+mygeMjXTbRD+zhI+2GLT7Sbriq1VrM7bfMnydHHoOPtLterR/L7EgX7Iu8Qnp595ZAQOthwlfNI733GNIW7EDPrhIPGiHdLRu6ugv2WnL2Wky2CGknXSkIaTdc1SpC2g1bhLQbrghpd1yx3EcAIV1wJOQR0r82MaH1MOFvOzcEj/SeNbLPD/qg9mFVa4OQRkhXHSRVEhBHuijB5PzEkXbDVa0S/s4NW6J2uOGqVtmRdse23iwjpEvoEVsf6RfDw4RGRK/t6ZFD2ocHu9CnGSHNVZ0Avo3VGZWVAt/Gskja2SFqhx2nMlIxj5RB0c4G84gdpzJTEbWjTJp2thDSdpwqpqompDcHhwlNNA4joJ/Z1CXjzWO9g2gcI0fJ5Na2EmrQHCZYAP31MwugP9ZaEkLaH2/mEX+smUf8sQ5LQkj7Z46QLoF5JSH9WNcGI6DXyv/bepjwU+YQoUbk+HiTx4TOg50FMA+1fHlYAPNxy5sLIZ2XXPZ8zCPZmeXNwTySl1z+fAjp/Ozy5kRI5yW3NV+aj/TbwWFC82TCDWvl9c2bZWpbu8warrvQHTLKhLfLe+EjjY903rET5sNHuijB5Pz4SLvhqlbxkXbDFh9pN1zVKj7S7tjWm2WE9NYeWbR4icw+7zKZf/WlMm3qlG366ZQzL5FXXl0avLbH5Ily27zL+99PEtK/Wm8OE25YLQ9u3CDtgwb3ReMwu9AfMWK66IWQRkgXHUMI6aIEEdJ77r2fTJ6ypxuQCVYR0m5QI6TdcEVIu+Naj5YR0qZXjph5vqxctTbon7iQ/uIFV8iKlWv6xbOK6nFjO+THV14YpI8K6eeN//NNgS/0Glnf2yOHG/cN3YH+zPBRpfU9QhohXXQwIaSLEkRII6TLH0OEvyufaWixFqFN2ZF215/1ZhkhvbVH0nakVWR//dxZMvP4w4OUC+5+RL439yZ5eMFV/X25fF2XXPfe+4Erx6LNXTKxdUj/o70ntrbWW583bH3wbfTXdfg2+mOtJeEj7Y8384g/1swj/liHJeEj7Z85QrqCkE4S1/HX7lu7Tq5Z/p78ck3fkwlnmt1n3YU+gsOEpY9mFsDSkaYaZAH0xxoh7Zc184g/3swj/lgjpP2zDktESBcU0ke/vEQeXLdOxpmQdt8dP15mdYyuXW8O8JJ1Uu7u6ZXNW3oGeEtr37zWlsEypHWQbHT0FMnat7C+ajBq+BDR6D9c7gkwj7hnHJbAPOKPdViSziVcfgkgpAsKafWRfu3ML8pl43aQ0YNbnPfemtWr5eabfipnffkrzssKC3jl5ZfkheeflZNn/rm3Mp9+cqGsWbtGjjr6mP4yXS+Av7nrDtll191k3/3299bOX8z/dznksMNl110neSvzh/9ypZx1zl9Je/vQ1DLLXAC7ujrlumv+Vb7y1xd4a+Mbb7wmjz/6iHx29l96K/P5556VN994XY474aTMZeYV0g8+cJ90jOqQ6QfNyFxm3gy3L/il7LPv/rLHnnvlNZE533U/+qGcNuvz0jG6+EaF7Txy5T99Wy74xsWZ65o3w/Ll78g9Zg76/Blfymsicz7Xc3vSPPK7xx4O6vmxQ4/IXN+8GWoxt//0huvlk2YuGD9+x7zVzpxPx+ycOXMy5yNDMQII6QpCWt9K8pG+5LvXyfMPzgty5nlEeJEu47Ahhw2LjB/Ny2HDogST8xP+zg1XtUrUDjdsidrhhqta5bChO7b1ZhkhXUVIZ4na4aNzEdII6aLjDCFdlCBCmqgd5Y8honaUzzS0SNQOd2yxLIKQ3rrrHIa/00ExdsyobaJyVIojremrPSKcgVYOAQ4JlcPRxgqHhGwolZeGqB3lsaxmiXmkGqHy3mceKY+lrSWidtiSKi8dQroElgjpEiBamGABtIBUUhIWwJJAWppBSFuCKiEZ80gJEC1NMI9YgioxGUK6RJiWphDSlqAqJUNIlwDRwgQLoAWkkpKwAJYE0tIMQtoSVAnJmEdKgGhpgnnEElSJyRDSJcK0NIWQtgSVlozDhgUBpmRf9MyTst48IfKQwz/en8L1AlgLP7o7bp0vB844VCZM3M0NyASr+Ei7Qc1hQzdc1SqHDd2w5bChG65qlcOG7tjWm2WEdMEeQUgXBIiQRkg7GELLlr4uTy18TE76zGwH1pNNIqTdoUZIu2GLkHbDFSHtjms9WkZIF+wVhHRBgAhphLSDIYSQdgB1q8l777xViNpRPl+idpTPNLRYi28b2ZF215/1ZhkhXW89Qn0gAAEIQAACEIAABBqCAEK6IbqJSkIAAhCAAAQgAAEI1BsBhHS99Qj1gQAEIAABCEAAAhBoCAII6YboJioJAQhAAAIQgAAEIFBvBBDSBXqk2hMPC5hu2qxZmOrj2594evE2rJ5/cF7Tssva8Cyso7a/+e0fye33PCbzr75Upk2dkrXYpk2fh/e+R53Zz+vcL5ws53/p1Kbll6XhWVkfMfN8iT7dlnkkC+30tIsWL5HZ513GXFEOzn4rtlxZI0sGn2IOIZ2Tsw7QFSvXyG3zLg8s6MQ9bmyH/PjKC3NaJFtWprr4Pbzgqn5wKvAeWbhom9egmkwgK+vQyoK7H5F/m3+XvPLqUhbHDIMrK+9wobz8orNk5vGHZyiJpFlZ69y9z16T5DsXfzmAF88P0XwEojcn3HTnY5iUKwtX1sjyuFeyhJDOyVkH6NfPndW/yKnA+N7cmxBxOXlqtqJMbe/SC1RxwGTNy1p3SHVRZJcp21DIylvF3TFHHMgOdDbMQeqsrLOmz1Glps3CnOym6/NyzZvPTSsGjlWEdI6+TBqMDNAcICNZymB61fW3yM2/eoCbmSpdkZe1irv/NfsE2X3SzgjpDMM9D2+9YRk7ZtQ27gbs6lWHnod16KoUunNwE1Ods20K1kVbUtnS5eXKGpmNs21qhLQtqZJFX45iB3SWPAtgFAhfhdsPjzysVWy88977getS3kncvoYDK2VW3kljOS72Bhah8lqTlbWWHOaJ1gIf6XL6hLmiHI5xK3m4ska66Qu1ipDOwTbPZJ2jmKbKUoRpmJfDWHZDJivruNtSnkncrmYDM1VW3ml8dZcan+nKYyQra7UWuiuFB2d1127uT24XxHTxzyNzRXGGSRaycmWNdNMPoVWEdE6+SX51l3z3OibfnDw1Wx6mKvKUO197ZwOfhXXIOKkEbl7suGfhHYq7uGhGSJfPOhQYUdGcVaTY1ao5U8HSTb9n4coa6aYPolYR0jkZZz0ZnrOYpspWjan6LuoVRkrhgGf+4ZGVdbSkLJN4/hoOrJxZeWv6l5e82e/vT0Qa+/GQlbXeoBw8fWp/xCVY27OulpK5ohqhfO+ncWWNzMezaC6EdAGCWWOVFiiqabJWYhqdJJL8GkNIfP1tN1xsWcetsTja8Y2nyso7ml4PHkZDPearQfPkyso6Gq8b1uWMk3hsbri658oaWQ7jrFYQ0lmJkR4CEIAABCAAAQhAAAKGAEKaYQABCEAAAhCAAAQgAIEcBBDSOaCRBQIQgAAEIAABCEAAAghpxgAEIAABCEAAAhCAAARyEEBI54BGFghAAAIQgAAEIAABCCCkGQMQgAAEIAABCEAAAhDIQQAhnQMaWSAAAQhAAAIQgAAEIICQZgxAAAIQgAAEIAABCEAgBwGEdA5oZIEABCAAAQhAAAIQgABCmjEAAQhAAAIQgAAEIACBHAQQ0jmgkQUCEIAABCAAAQhAAAIIacYABCAAAQhAAAIQgAAEchBASOeARhYIQAACEIAABCAAAQggpBkDEIAABCAAAQhAAAIQyEEAIZ0DGlkgAAEIQAACEIAABCCAkGYMQAACEIAABCAAAQhAIAcBhHQOaGSBAAQgAAEIQAACEIAAQpoxAAEIQAACEIAABCAAgRwEENI5oJEFAhCAAAQgAAEIQAACCGnGAAQgMGAIXHX9LTL3J7d/qD3nfuFkOf9Lp8oRM88P3nt4wVUfSqPvjR3TIbfNuzx4r5qtfY86syK3sWNGBeV88YIr5ImnFyemvfyis2Tm8YfLKWdeIq+8ulTC/8PEC+5+RC757nWyx+SJ/fWKG7Kpx+Ezpsnt9zzWn/XkTx4q37n4y5nKtWnHgBlINAQCEICAJQGEtCUokkEAAvVNIBR686++VKZNndJfWRXE9z38VL8QVeF58PSp8uMrL+xP881v/0geWbioX2Db2ooL3rgQ1vfV1oqVa1KFsKYJhXS8XuHrlYR0tFdC4Z1Uj6T3spRr0476HiHUDgIQgED5BBDS5TPFIgQgUAMCKpDDndZKxccF5aLFS2T2eZdtsxtsa6tMIT1ubEewcx3eCIT1UnFdTYjb1CNNSNuWi5CuwaCmSAhAoO4JIKTrvouoIAQgYENAXTP2nLLLNjvNaflUFL685M1gB1p3ZVVMRneos9jSMirtBNsIUK3DPntNknfee1923H67wO1Cd8n10tdcCmnbcm3aYdNPpIEABCAwkAggpAdSb9IWCDQxgVDMhghCH+U0JFHf4ucfnLdNsqy2qglpGx9pFbQHT98n8InW+mj9dHf6n6/9hXMhbVMuPtJN/OGi6RCAQCoBhDSDAwIQGHAEQreIsGFJLh+h+A0PIqZByGKriI+0CunwAKDWJdwlz7ITnMdH2rbcLPUYcAOKBkEAAhBIIYCQZmhAAAIDmoC6SGjEiviuc5JvdDUQabaq7UhXc80IXTtUSIfRQkJRnkXAFhHS1crNUo9qHHkfAhCAwEAhgJAeKD1JOyDQxARUFP/s1vuCHd34FQrEeDSPNCGdx1aZQlrrrz7aYYi+LAK2iJCuVm6WejTxUKTpEIBAkxFASDdZh9NcCAxEAlH3i+jOczTyRfQwoTKoJKQ1iodVGkPEAAADS0lEQVRetrbKFtLRPsoiYIsK6UrlZqnHQBxjtAkCEIBAEgGENOMCAhAYMASSHk6S5gNdzbUji61qQtr2sGHSjnoWAZtWj9AlJezo6ANZQh/p+CCIl8thwwHzMaEhEIBAiQQQ0iXCxBQEIAABCEAAAhCAQPMQQEg3T1/TUghAAAIQgAAEIACBEgkgpEuEiSkIQAACEIAABCAAgeYhgJBunr6mpRCAAAQgAAEIQAACJRJASJcIE1MQgAAEIAABCEAAAs1DACHdPH1NSyEAAQhAAAIQgAAESiSAkC4RJqYgAAEIQAACEIAABJqHAEK6efqalkIAAhCAAAQgAAEIlEgAIV0iTExBAAIQgAAEIAABCDQPAYR08/Q1LYUABCAAAQhAAAIQKJEAQrpEmJiCAAQgAAEIQAACEGgeAgjp5ulrWgoBCEAAAhCAAAQgUCIBhHSJMDEFAQhAAAIQgAAEINA8BBDSzdPXtBQCEIAABCAAAQhAoEQCCOkSYWIKAhCAAAQgAAEIQKB5CCCkm6evaSkEIAABCEAAAhCAQIkEENIlwsQUBCAAAQhAAAIQgEDzEEBIN09f01IIQAACEIAABCAAgRIJIKRLhIkpCEAAAhCAAAQgAIHmIYCQbp6+pqUQgAAEIAABCEAAAiUSQEiXCBNTEIAABCAAAQhAAALNQwAh3Tx9TUshAAEIQAACEIAABEokgJAuESamIAABCEAAAhCAAASahwBCunn6mpZCAAIQgAAEIAABCJRIACFdIkxMQQACEIAABCAAAQg0DwGEdPP0NS2FAAQgAAEIQAACECiRAEK6RJiYggAEIAABCEAAAhBoHgII6ebpa1oKAQhAAAIQgAAEIFAiAYR0iTAxBQEIQAACEIAABCDQPAQQ0s3T17QUAhCAAAQgAAEIQKBEAgjpEmFiCgIQgAAEIAABCECgeQggpJunr2kpBCAAAQhAAAIQgECJBBDSJcLEFAQgAAEIQAACEIBA8xBASDdPX9NSCEAAAhCAAAQgAIESCSCkS4SJKQhAAAIQgAAEIACB5iGAkG6evqalEIAABCAAAQhAAAIlEkBIlwgTUxCAAAQgAAEIQAACzUMAId08fU1LIQABCEAAAhCAAARKJPD/A8TQ9b76VCR1AAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics_fixed.plot_history(colors=['darkturquoise', 'orange'], show_intervals=True)" ] }, { "cell_type": "markdown", "id": "3396051b-ecff-4a08-8c71-7c96f7429da3", "metadata": {}, "source": [ "Notice how grid points are being \"wasted\" on the tail part of the simulation, where little is happening - grid points that would be best used in the early part, as was done by the variable-step simulation of Part 1" ] }, { "cell_type": "code", "execution_count": null, "id": "8f453c61-296d-4627-8d4f-85c531eb4abc", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "73229033-14a0-41cd-84fb-5d688efc2e9d", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "f2d90ba4-b243-4dc0-8c83-d6e73c9cd6eb", "metadata": {}, "source": [ "# PART 3 - EXACT Solution" ] }, { "cell_type": "code", "execution_count": 15, "id": "33b22e64-70f3-4bf8-bb0b-0551ab11acd0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0. , 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3 ,\n", " 0.33, 0.36, 0.39, 0.42, 0.45, 0.48, 0.51, 0.54, 0.57, 0.6 , 0.63,\n", " 0.66, 0.69, 0.72, 0.75, 0.78, 0.81, 0.84, 0.87, 0.9 , 0.93, 0.96,\n", " 0.99, 1.02, 1.05, 1.08, 1.11, 1.14, 1.17, 1.2 ])" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t_arr = np.linspace(0., 1.2, 41) # A relatively dense uniform grid across our time range\n", "t_arr" ] }, { "cell_type": "code", "execution_count": 19, "id": "e33e7806-cb5b-40c7-8ada-1cf8aa2b8abb", "metadata": {}, "outputs": [], "source": [ "# The exact solution is available for a simple scenario like the one we're simulating here\n", "rxn = chem_data.get_reaction(0) # Object of type life123.reaction.Reaction\n", "\n", "A_exact, B_exact = ReactionKinetics.solve_exactly(rxn=rxn, A0=10., B0=50., t_arr=t_arr)" ] }, { "cell_type": "code", "execution_count": 20, "id": "00526b58-deb1-4209-b05b-f4ca927d990b", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "A (EXACT) :
SYSTEM TIME=%{x}
value=%{y}", "legendgroup": "wide_variable_0", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A (EXACT)", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3, 0.32999999999999996, 0.36, 0.39, 0.42, 0.44999999999999996, 0.48, 0.51, 0.54, 0.57, 0.6, 0.63, 0.6599999999999999, 0.69, 0.72, 0.75, 0.78, 0.8099999999999999, 0.84, 0.87, 0.8999999999999999, 0.9299999999999999, 0.96, 0.99, 1.02, 1.05, 1.08, 1.1099999999999999, 1.14, 1.17, 1.2 ], "xaxis": "x", "y": [ 10, 11.95008833004919, 13.62854491045595, 15.073205877295173, 16.316637094683628, 17.386868261625793, 18.30802476363161, 19.100871512443824, 19.78328103322917, 20.37063635095752, 20.876177757921983, 21.311301279309443, 21.685815564897787, 22.008162997788812, 22.285610004458253, 22.524410856133898, 22.729948653948224, 22.906856675983857, 23.059122821643502, 23.190179507752262, 23.302981042849904, 23.400070223861437, 23.48363565638264, 23.555561090707048, 23.617467885737906, 23.670751558015873, 23.71661323975874, 23.75608675504709, 23.790061924513314, 23.819304623873283, 23.84447404846461, 23.86613757297239, 23.88478354131372, 23.90083227499327, 23.91464554808278, 23.926534742411462, 23.93676786680342, 23.945575598591333, 23.953156483595404, 23.959681411786764, 23.96529746952667 ], "yaxis": "y" }, { "hovertemplate": "B (EXACT) :
SYSTEM TIME=%{x}
value=%{y}", "legendgroup": "wide_variable_1", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B (EXACT)", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3, 0.32999999999999996, 0.36, 0.39, 0.42, 0.44999999999999996, 0.48, 0.51, 0.54, 0.57, 0.6, 0.63, 0.6599999999999999, 0.69, 0.72, 0.75, 0.78, 0.8099999999999999, 0.84, 0.87, 0.8999999999999999, 0.9299999999999999, 0.96, 0.99, 1.02, 1.05, 1.08, 1.1099999999999999, 1.14, 1.17, 1.2 ], "xaxis": "x", "y": [ 50, 48.04991166995081, 46.37145508954405, 44.92679412270483, 43.68336290531637, 42.61313173837421, 41.69197523636839, 40.899128487556176, 40.21671896677083, 39.62936364904248, 39.12382224207802, 38.68869872069055, 38.31418443510221, 37.991837002211184, 37.71438999554175, 37.4755891438661, 37.27005134605177, 37.09314332401614, 36.9408771783565, 36.80982049224774, 36.69701895715009, 36.599929776138566, 36.51636434361736, 36.444438909292955, 36.38253211426209, 36.32924844198413, 36.28338676024126, 36.24391324495291, 36.20993807548669, 36.18069537612672, 36.155525951535395, 36.13386242702761, 36.11521645868628, 36.09916772500673, 36.08535445191722, 36.07346525758854, 36.06323213319658, 36.05442440140867, 36.04684351640459, 36.04031858821324, 36.034702530473325 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "EXACT solution" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 1.2 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 7.777777777777778, 52.22222222222222 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig_exact = PlotlyHelper.plot_curves(x=t_arr, y=[A_exact, B_exact], title=\"EXACT solution\", xlabel=\"SYSTEM TIME\", ylabel=\"concentration\", \n", " legend_title=\"Chemical\", curve_labels=[\"A (EXACT)\", \"B (EXACT)\"],\n", " colors=[\"darkturquoise\", \"orange\"], show=True)" ] }, { "cell_type": "code", "execution_count": null, "id": "d951e46a-674d-4842-9f19-aa91c89aea38", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "d1d8c2c8-af8d-44d4-a6f2-ee7b5bc24ff4", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "766e8bba-3a15-461e-9bf6-9daf509197d5", "metadata": { "tags": [] }, "source": [ "# PART 4 - Comparing Variable Steps, Fixed Steps and Exact Solution \n", "#### To avoid clutter, we'll just plot [A]" ] }, { "cell_type": "code", "execution_count": 21, "id": "e9b8f945-b324-4d28-b2fd-b315df812de2", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.016000000000000004, 0.03200000000000001, 0.048000000000000015, 0.06720000000000002, 0.08640000000000003, 0.10944000000000004, 0.13248000000000004, 0.16012800000000005, 0.19330560000000005, 0.23311872000000006, 0.28089446400000007, 0.3382253568000001, 0.4070224281600001, 0.48957891379200014, 0.5886466965504001, 0.7075280358604801, 0.850185643032576, 1.0213747716390913, 1.2268017259669095 ], "xaxis": "x", "y": [ 10, 11.120000000000001, 12.150400000000001, 13.098368, 14.144924672, 15.091011903488, 16.117327332206184, 17.025411223536032, 17.989578375994412, 18.98663519835745, 19.984623670615306, 20.94381162849702, 21.819881668013238, 22.569810450307923, 23.160167565358876, 23.576169251301298, 23.828097086531773, 23.950713378038216, 23.992900047366195, 24.000192655593363 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "VARIABLE time steps" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 1.2268017259669095 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 9.222211519133703, 24.777981136459662 ], "title": { "text": "Concentration" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig_variable = dynamics_variable.plot_history(chemicals=['A'], colors='darkturquoise', title=\"VARIABLE time steps\", show=True) # Repeat a portion of the diagram seen in Part 1" ] }, { "cell_type": "code", "execution_count": 22, "id": "76070b5f-1bc1-42cf-bf7a-b06f6ec62e7b", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.06315789473684211, 0.12631578947368421, 0.18947368421052632, 0.25263157894736843, 0.3157894736842105, 0.3789473684210526, 0.44210526315789467, 0.5052631578947367, 0.5684210526315788, 0.6315789473684209, 0.694736842105263, 0.7578947368421051, 0.8210526315789471, 0.8842105263157892, 0.9473684210526313, 1.0105263157894735, 1.0736842105263156, 1.1368421052631577, 1.1999999999999997 ], "xaxis": "x", "y": [ 10, 14.421052631578949, 17.445983379501385, 19.51567283860621, 20.931776152730563, 21.900688946605122, 22.563629279256137, 23.01722003317525, 23.327571601646223, 23.539917411652677, 23.685206650078147, 23.784615076369256, 23.852631368042122, 23.899168830765664, 23.931010252629136, 23.95279648864099, 23.967702860649098, 23.977901957286225, 23.98488028656426, 23.989654932912387 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "FIXED time steps" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 1.1999999999999997 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 9.222796948171535, 24.766857984740852 ], "title": { "text": "Concentration" }, "type": "linear" } } }, "image/png": "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EEAAgeIIEKSLc655pwgggAACCCCAAAKKAgRpRUyGQgABBBBAAAEEECiOAEG6OOead4oAAggggAACCCCgKECQVsRkKAQQQAABBBBAAIHiCBCki3OueacIIIAAAggggAACigIEaUVMhkIAAQQQQAABBBAojgBBujjnmneKAAIIIIAAAgggoChAkFbEZCgEEEAAAQQQQACB4ggQpItzrnmnCCCAAAIIIIAAAooCBGlFTIZCAAEEEEAAAQQQKI4AQbo455p3igACCCCAAAIIIKAoQJBWxGQoBBBAAAEEEEAAgeIIEKSLc655pwgggAACCCCAAAKKAgRpRUyGQgABBBBAAAEEECiOAEG6OOead4oAAggggAACCCCgKECQVsRkKAQQQAABBBBAAIHiCBCki3OueacIIIAAAggggAACigIEaUVMhkIAAQQQQAABBBAojgBBujjnmneKAAIIIIAAAgggoChAkFbEZCgEEEAAAQQQQACB4ggQpItzrnmnCCCAAAIIIIAAAooCBGlFTIZCAAEEEEAAAQQQKI4AQbo455p3igACCCCAAAIIIKAoQJBWxGQoBBBAAAEEEEAAgeIIEKSLc655pwgggAACCCCAAAKKAgRpRUyGQgABBBBAAAEEECiOAEG6OOead4oAAggggAACCCCgKECQVsRkKAQQQAABBBBAAIHiCBCki3OueacIIIAAAggggAACigIEaUVMhkIAAQQQQAABBBAojgBBujjnmneKAAIIIIAAAgggoCjw/wFlkvAwaDKUUQAAAABJRU5ErkJggg==", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig_fixed = dynamics_fixed.plot_history(chemicals=['A'], colors='blue', title=\"FIXED time steps\", show=True) # Repeat a portion of the diagram seen in Part 2" ] }, { "cell_type": "code", "execution_count": 23, "id": "1dfe1166-2bb3-4472-9b4e-a167c1a7d54d", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "A (EXACT) :
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "wide_variable_0", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A (EXACT)", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3, 0.32999999999999996, 0.36, 0.39, 0.42, 0.44999999999999996, 0.48, 0.51, 0.54, 0.57, 0.6, 0.63, 0.6599999999999999, 0.69, 0.72, 0.75, 0.78, 0.8099999999999999, 0.84, 0.87, 0.8999999999999999, 0.9299999999999999, 0.96, 0.99, 1.02, 1.05, 1.08, 1.1099999999999999, 1.14, 1.17, 1.2 ], "xaxis": "x", "y": [ 10, 11.95008833004919, 13.62854491045595, 15.073205877295173, 16.316637094683628, 17.386868261625793, 18.30802476363161, 19.100871512443824, 19.78328103322917, 20.37063635095752, 20.876177757921983, 21.311301279309443, 21.685815564897787, 22.008162997788812, 22.285610004458253, 22.524410856133898, 22.729948653948224, 22.906856675983857, 23.059122821643502, 23.190179507752262, 23.302981042849904, 23.400070223861437, 23.48363565638264, 23.555561090707048, 23.617467885737906, 23.670751558015873, 23.71661323975874, 23.75608675504709, 23.790061924513314, 23.819304623873283, 23.84447404846461, 23.86613757297239, 23.88478354131372, 23.90083227499327, 23.91464554808278, 23.926534742411462, 23.93676786680342, 23.945575598591333, 23.953156483595404, 23.959681411786764, 23.96529746952667 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "margin": { "t": 60 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "EXACT solution" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 1.2 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 9.224150140581852, 24.74114732894482 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig_exact = PlotlyHelper.plot_curves(x=t_arr, y=A_exact, title=\"EXACT solution\", xlabel=\"SYSTEM TIME\", ylabel=\"concentration\", \n", " curve_labels=\"A (EXACT)\", legend_title=\"Chemical\",\n", " colors=\"red\", show=True) # Repeat a portion of the diagram seen in Part 3" ] }, { "cell_type": "code", "execution_count": 24, "id": "c4b58649-0d8a-4a66-922f-bc0b821574c2", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "FIXED time steps
Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "FIXED time steps", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.06315789473684211, 0.12631578947368421, 0.18947368421052632, 0.25263157894736843, 0.3157894736842105, 0.3789473684210526, 0.44210526315789467, 0.5052631578947367, 0.5684210526315788, 0.6315789473684209, 0.694736842105263, 0.7578947368421051, 0.8210526315789471, 0.8842105263157892, 0.9473684210526313, 1.0105263157894735, 1.0736842105263156, 1.1368421052631577, 1.1999999999999997 ], "xaxis": "x", "y": [ 10, 14.421052631578949, 17.445983379501385, 19.51567283860621, 20.931776152730563, 21.900688946605122, 22.563629279256137, 23.01722003317525, 23.327571601646223, 23.539917411652677, 23.685206650078147, 23.784615076369256, 23.852631368042122, 23.899168830765664, 23.931010252629136, 23.95279648864099, 23.967702860649098, 23.977901957286225, 23.98488028656426, 23.989654932912387 ], "yaxis": "y" }, { "hovertemplate": "VARIABLE time steps
Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "VARIABLE time steps", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.016000000000000004, 0.03200000000000001, 0.048000000000000015, 0.06720000000000002, 0.08640000000000003, 0.10944000000000004, 0.13248000000000004, 0.16012800000000005, 0.19330560000000005, 0.23311872000000006, 0.28089446400000007, 0.3382253568000001, 0.4070224281600001, 0.48957891379200014, 0.5886466965504001, 0.7075280358604801, 0.850185643032576, 1.0213747716390913, 1.2268017259669095 ], "xaxis": "x", "y": [ 10, 11.120000000000001, 12.150400000000001, 13.098368, 14.144924672, 15.091011903488, 16.117327332206184, 17.025411223536032, 17.989578375994412, 18.98663519835745, 19.984623670615306, 20.94381162849702, 21.819881668013238, 22.569810450307923, 23.160167565358876, 23.576169251301298, 23.828097086531773, 23.950713378038216, 23.992900047366195, 24.000192655593363 ], "yaxis": "y" }, { "hovertemplate": "EXACT solution
A (EXACT) :
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "wide_variable_0", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "EXACT solution", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3, 0.32999999999999996, 0.36, 0.39, 0.42, 0.44999999999999996, 0.48, 0.51, 0.54, 0.57, 0.6, 0.63, 0.6599999999999999, 0.69, 0.72, 0.75, 0.78, 0.8099999999999999, 0.84, 0.87, 0.8999999999999999, 0.9299999999999999, 0.96, 0.99, 1.02, 1.05, 1.08, 1.1099999999999999, 1.14, 1.17, 1.2 ], "xaxis": "x", "y": [ 10, 11.95008833004919, 13.62854491045595, 15.073205877295173, 16.316637094683628, 17.386868261625793, 18.30802476363161, 19.100871512443824, 19.78328103322917, 20.37063635095752, 20.876177757921983, 21.311301279309443, 21.685815564897787, 22.008162997788812, 22.285610004458253, 22.524410856133898, 22.729948653948224, 22.906856675983857, 23.059122821643502, 23.190179507752262, 23.302981042849904, 23.400070223861437, 23.48363565638264, 23.555561090707048, 23.617467885737906, 23.670751558015873, 23.71661323975874, 23.75608675504709, 23.790061924513314, 23.819304623873283, 23.84447404846461, 23.86613757297239, 23.88478354131372, 23.90083227499327, 23.91464554808278, 23.926534742411462, 23.93676786680342, 23.945575598591333, 23.953156483595404, 23.959681411786764, 23.96529746952667 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Simulation run" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Variable time steps vs. Fixed vs. Exact soln, for [A] in reaction `A<->B`" }, "xaxis": { "range": [ 0, 0.4 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "autorange": true, "range": [ 9.222211519133703, 24.777981136459662 ], "title": { "text": "concentration [A]" }, "type": "linear" } } }, "image/png": "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jT3OHARAAARAAARAAARAoAgCEOki4OFQEAABEAABEAABEACB8iUAkS7f2OPMQQAEQAAEQAAEQAAEiiAAkS4CHg4FARAAARAAARAAARAoXwIQ6fKNPc4cBEAABEAABEAABECgCAIQ6SLg4VAQAAEQAAEQAAEQAIHyJQCRLt/Y48xBAARAAARAAARAAASKIACRLgIeDgUBEAABEAABEAABEChfAhDp8o09zhwEQAAEQAAEQAAEQKAIAhDpIuDhUBAAARAAARAAARAAgfIlAJEu39jjzEEABEAABEAABEAABIogAJEuAh4OBQEQAAEQAAEQAAEQKF8CEOnyjT3OHARAAARAAARAAARAoAgCEOki4OFQEAABEAABEAABEACB8iUAkS7f2OPMQQAEQAAEQAAEQAAEiiAAkS4CHg4FARAAARAAARAAARAoXwIQ6fKNPc4cBEAABEAABEAABECgCAIQ6SLg4VAQAAEQAAEQAAEQAIHyJQCRLt/Y48xBAARAAARAAARAAASKIACRLgIeDgUBEAABEAABEAABEChfAhDp8o09zhwEQAAEQAAEQAAEQKAIAhDpIuDhUBAAARAAARAAARAAgfIlAJEu39jjzEEABEAABEAABEAABIogAJEuAh4OBQEQAAEQAAEQAAEQKF8CEOnyjT3OHARAAARAAARAAARAoAgCEOki4OFQEAABEAABEAABEACB8iUAkS7f2OPMQQAEQAAEQAAEQAAEiiAAkS4CHg4FARAAARAAARAAARAoXwIQ6fKNPc4cBEAABEAABEAABECgCAIQ6SLg4VAQAAEQAAEQAAEQAIHyJQCRLt/Y48xBAARAAARAAARAAASKIPD/A1gH8T1MnMp+AAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "PlotlyHelper.combine_plots(fig_list=[fig_fixed, fig_variable, fig_exact],\n", " xrange=[0, 0.4], ylabel=\"concentration [A]\",\n", " title=\"Variable time steps vs. Fixed vs. Exact soln, for [A] in reaction `A<->B`\",\n", " legend_title=\"Simulation run\") # All the 3 plots put together: show only the initial part (but it's all there; you can zoom out!)" ] }, { "cell_type": "markdown", "id": "3d37253d-7510-4384-abd6-4bb5cc18ef95", "metadata": {}, "source": [ "#### Not surprisingly, the adaptive variable time steps outperform the fixed ones (for the same total number of points in the time grid), at times when there's pronounced change. \n", "If you zoom out on the plot (by hovering on it, and using the Plotly controls that appear on the right, above), you can see all 3 curves essentially converging as the reaction approaches equilibrium." ] }, { "cell_type": "code", "execution_count": null, "id": "353e5490-2cca-4f05-8f60-b6a34524a715", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "d83e4e09-853c-46af-9669-295dcff914b9", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "4375bea1-4a14-486f-906d-92b5ba588e79", "metadata": { "tags": [] }, "source": [ "# PART 5 - Repeating Part 4 with a coarser grid\n", "#### The advantage of adaptive variable step will be even more prominent" ] }, { "cell_type": "code", "execution_count": 26, "id": "71c89174-9c43-428f-bac5-af9ef17e35d3", "metadata": {}, "outputs": [], "source": [ "# A coarser version of the variable-step simulation of Part 1\n", "dynamics_variable_new = UniformCompartment(chem_data=chem_data, preset=\"fast\") # Re-use same chemicals and reactions of part 2\n", "\n", "dynamics_variable_new.set_conc([10., 50.])" ] }, { "cell_type": "code", "execution_count": 27, "id": "e38d2dcb-1ea1-4728-a26f-126821669d6a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Some steps were backtracked and re-done, to prevent negative concentrations or excessively large concentration changes\n", "14 total step(s) taken\n", "Number of step re-do's because of elective soft aborts: 3\n", "Norm usage: {'norm_A': 13, 'norm_B': 9, 'norm_C': 9, 'norm_D': 9}\n" ] } ], "source": [ "dynamics_variable_new.single_compartment_react(initial_step=0.1, target_end_time=1.2,\n", " variable_steps=True,\n", " snapshots={\"initial_caption\": \"1st reaction step\",\n", " \"final_caption\": \"last reaction step\"}\n", " )" ] }, { "cell_type": "markdown", "id": "aa18698d-2dea-4a83-a166-de67565e918b", "metadata": {}, "source": [ "### Note that the variable-step simulation is now taking 14 steps instead of the earlier 19" ] }, { "cell_type": "code", "execution_count": 28, "id": "6ce6eae6-0c4a-4908-9670-d096445d08b4", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "SYSTEM TIME=%{x}
A=%{y}", "legendgroup": "", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "", "orientation": "v", "showlegend": false, "type": "scatter", "x": [ 0, 0.021599999999999998, 0.043199999999999995, 0.0648, 0.0972, 0.12312, 0.16199999999999998, 0.20087999999999998, 0.2592, 0.31751999999999997, 0.40499999999999997, 0.5362199999999999, 0.73305, 1.028295, 1.4711625 ], "xaxis": "x", "y": [ 10, 11.512, 12.860704, 14.063747968, 15.673420797183999, 16.75254546186895, 18.161450624081628, 19.29646462276016, 20.668015538763296, 21.63962220765992, 22.67205145402947, 23.543318495040737, 23.992761598146394, 24.00344710792273, 23.995814047582883 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "tracegroupgap": 0 }, "shapes": [ { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0, "x1": 0, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.021599999999999998, "x1": 0.021599999999999998, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.043199999999999995, "x1": 0.043199999999999995, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0648, "x1": 0.0648, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0972, "x1": 0.0972, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.12312, "x1": 0.12312, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.16199999999999998, "x1": 0.16199999999999998, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.20087999999999998, "x1": 0.20087999999999998, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.2592, "x1": 0.2592, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.31751999999999997, "x1": 0.31751999999999997, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.40499999999999997, "x1": 0.40499999999999997, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5362199999999999, "x1": 0.5362199999999999, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.73305, "x1": 0.73305, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.028295, "x1": 1.028295, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.4711625, "x1": 1.4711625, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "VARIABLE time steps (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.0013111965240641711, 1.4724736965240641 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 9.222030716226515, 24.781416391696215 ], "title": { "text": "[A]" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig_variable = dynamics_variable_new.plot_history(chemicals='A', colors='darkturquoise', title=\"VARIABLE time steps\",\n", " show_intervals=True, show=True)" ] }, { "cell_type": "code", "execution_count": 29, "id": "5638d0b4-77e8-425e-ad5e-f80849abf4d3", "metadata": {}, "outputs": [], "source": [ "# Now, a coarser version of the fixed-step simulation of Part 2\n", "dynamics_fixed_new = UniformCompartment(chem_data=dynamics_fixed.chem_data) # Re-using same chemicals and reactions of part 2\n", "\n", "dynamics_fixed_new.set_conc([10., 50.])" ] }, { "cell_type": "code", "execution_count": 30, "id": "e8170d78-43f1-4b2a-ba68-43605a03c374", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "14 total step(s) taken\n" ] } ], "source": [ "# Matching the NEW total number of steps\n", "dynamics_fixed_new.single_compartment_react(n_steps=14, target_end_time=1.2,\n", " variable_steps=False,\n", " snapshots={\"initial_caption\": \"1st reaction step\",\n", " \"final_caption\": \"last reaction step\"})" ] }, { "cell_type": "code", "execution_count": 31, "id": "a2052848-23c2-4524-8052-862d2b7a9795", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "SYSTEM TIME=%{x}
A=%{y}", "legendgroup": "", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "", "orientation": "v", "showlegend": false, "type": "scatter", "x": [ 0, 0.08571428571428572, 0.17142857142857143, 0.2571428571428571, 0.34285714285714286, 0.4285714285714286, 0.5142857142857143, 0.6000000000000001, 0.6857142857142858, 0.7714285714285716, 0.8571428571428573, 0.9428571428571431, 1.0285714285714287, 1.1142857142857143, 1.2 ], "xaxis": "x", "y": [ 10, 16, 19.42857142857143, 21.387755102040817, 22.50728862973761, 23.147022074135776, 23.5125840423633, 23.721476595636172, 23.840843768934956, 23.909053582248546, 23.94803061842774, 23.970303210530137, 23.98303040601722, 23.990303089152697, 23.994458908087253 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "tracegroupgap": 0 }, "shapes": [ { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0, "x1": 0, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.08571428571428572, "x1": 0.08571428571428572, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.17142857142857143, "x1": 0.17142857142857143, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.2571428571428571, "x1": 0.2571428571428571, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.34285714285714286, "x1": 0.34285714285714286, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.4285714285714286, "x1": 0.4285714285714286, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5142857142857143, "x1": 0.5142857142857143, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.6000000000000001, "x1": 0.6000000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.6857142857142858, "x1": 0.6857142857142858, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.7714285714285716, "x1": 0.7714285714285716, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.8571428571428573, "x1": 0.8571428571428573, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.9428571428571431, "x1": 0.9428571428571431, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.0285714285714287, "x1": 1.0285714285714287, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.1142857142857143, "x1": 1.1142857142857143, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.2, "x1": 1.2, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "FIXED time steps (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.0010695187165775401, 1.2010695187165774 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 9.22253006066182, 24.771928847425436 ], "title": { "text": "[A]" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig_fixed = dynamics_fixed_new.plot_history(chemicals='A', colors='blue', title=\"FIXED time steps\",\n", " show_intervals=True, show=True)" ] }, { "cell_type": "markdown", "id": "6a13881a-0e2a-4a7c-89e3-a00724064b4d", "metadata": {}, "source": [ "#### Notice the jaggedness at the left (jaggedness NOT present with the same number of total grid points, with the variable-step simulation)" ] }, { "cell_type": "code", "execution_count": 32, "id": "78261e52-b7c2-4a31-915d-861b33778859", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "FIXED time steps
SYSTEM TIME=%{x}
A=%{y}", "legendgroup": "", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "FIXED time steps", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.08571428571428572, 0.17142857142857143, 0.2571428571428571, 0.34285714285714286, 0.4285714285714286, 0.5142857142857143, 0.6000000000000001, 0.6857142857142858, 0.7714285714285716, 0.8571428571428573, 0.9428571428571431, 1.0285714285714287, 1.1142857142857143, 1.2 ], "xaxis": "x", "y": [ 10, 16, 19.42857142857143, 21.387755102040817, 22.50728862973761, 23.147022074135776, 23.5125840423633, 23.721476595636172, 23.840843768934956, 23.909053582248546, 23.94803061842774, 23.970303210530137, 23.98303040601722, 23.990303089152697, 23.994458908087253 ], "yaxis": "y" }, { "hovertemplate": "VARIABLE time steps
SYSTEM TIME=%{x}
A=%{y}", "legendgroup": "", "line": { "color": "darkturquoise", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "VARIABLE time steps", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.021599999999999998, 0.043199999999999995, 0.0648, 0.0972, 0.12312, 0.16199999999999998, 0.20087999999999998, 0.2592, 0.31751999999999997, 0.40499999999999997, 0.5362199999999999, 0.73305, 1.028295, 1.4711625 ], "xaxis": "x", "y": [ 10, 11.512, 12.860704, 14.063747968, 15.673420797183999, 16.75254546186895, 18.161450624081628, 19.29646462276016, 20.668015538763296, 21.63962220765992, 22.67205145402947, 23.543318495040737, 23.992761598146394, 24.00344710792273, 23.995814047582883 ], "yaxis": "y" }, { "hovertemplate": "EXACT solution
A (EXACT) :
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "wide_variable_0", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "EXACT solution", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3, 0.32999999999999996, 0.36, 0.39, 0.42, 0.44999999999999996, 0.48, 0.51, 0.54, 0.57, 0.6, 0.63, 0.6599999999999999, 0.69, 0.72, 0.75, 0.78, 0.8099999999999999, 0.84, 0.87, 0.8999999999999999, 0.9299999999999999, 0.96, 0.99, 1.02, 1.05, 1.08, 1.1099999999999999, 1.14, 1.17, 1.2 ], "xaxis": "x", "y": [ 10, 11.95008833004919, 13.62854491045595, 15.073205877295173, 16.316637094683628, 17.386868261625793, 18.30802476363161, 19.100871512443824, 19.78328103322917, 20.37063635095752, 20.876177757921983, 21.311301279309443, 21.685815564897787, 22.008162997788812, 22.285610004458253, 22.524410856133898, 22.729948653948224, 22.906856675983857, 23.059122821643502, 23.190179507752262, 23.302981042849904, 23.400070223861437, 23.48363565638264, 23.555561090707048, 23.617467885737906, 23.670751558015873, 23.71661323975874, 23.75608675504709, 23.790061924513314, 23.819304623873283, 23.84447404846461, 23.86613757297239, 23.88478354131372, 23.90083227499327, 23.91464554808278, 23.926534742411462, 23.93676786680342, 23.945575598591333, 23.953156483595404, 23.959681411786764, 23.96529746952667 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Simulation run" } }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Fixed vs. Variable time steps vs. Exact soln, for [A] in reaction `A<->B`" }, "xaxis": { "range": [ 0, 0.4 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "autorange": true, "range": [ 9.222030716226515, 24.781416391696215 ], "title": { "text": "concentration [A]" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtIAAAFoCAYAAAB60xwkAAAgAElEQVR4Xu2dC5gU1Zn337kP96ugXOSuAnIRFVFRMOItiUrcxEsSNxiNlxh3N2azakzcfH4xMd9uzPes367GVUPWJN4SBVRAREFBRA2oIKKCXOSiIAwwA3Pvnu+8VX16amqququqT52u6v7X88wzPTNV55z6vdXdv37nrXNK2sRG2EAABEAABEAABEAABEAABHwRKIFI++KFnUEABEAABEAABEAABEDAIACRxoUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiAAAiAAAgEIQKQDQMMhIAACIAACIAACIAACIACRxjUAAiAAAiAAAiBQ9ATGz5xjMPjt/7qZzp9xatHzYAD/8/SL9Ov/fJyOHtCXXn7qPjBxIACRDnhZ8BPuoi+dRv9+100BW8BhVgIbPt5Gl1//c5pzxYX045uuzAjnn+9+gBa98iZtWD4XEEEABEIkcO7ltxpvoH/6fz8NsZeOTX/rB7+gd9/fbPxSx5v3klffph/+6392GMRTD/2cxh833Pc5/9sDT9DcJxenj9Mxft+DxAEZCeTjmo96SORz5Labr6K//8YFUR+u9vFFUqSdXtisZKTAyhfcoC96udCOukjLT5GZLnzJ2Yu8emElZXjyiaN9v/HmW6T5Wvp8b02nT9ySURw/NOENIftVaxcf+xFBruXsvXrfI98fGnVfQ3y+77y/SWvmSz7HvWQhZcbSy+uBn3PJ53uZ96sx9z3drqcovc7K9yIv0iifn0wmDokd6QVOkcx2TcvXyjicZ+5Xqr8WIi3S2QQvny8+URdpvgx4jJlEQL4IqPogApH29+QLe2/dEhT2+YTRvnxz8CJRYfSfrc1iE2l+zcr2up+Nmd+/exVpu4RkEwqIdOdIxEGk/Vw/8oMVH+NFvJ3alh7j9zVIvjb4Oc4twRalDzJ++Edl31iLdD4hxkGks4lyNtHWyTeqGWmdDFT3BZHOThQinZmRzmvITyYwe2S97+FVpOV/rb4j/rXNNaPZxMmPSHsfbbz31Hk9hU1KSimLLJcG+f3vlTWbHTSZZW3Di1Bn+k+1239lw+ZYCO3HWqTt2Rp+kvK/5+0vcNZSEWsWwWs9m9N+3E+2f4VkKp2QbxrWNpz+zezlyeF2IWbq3/6EcvuXjxtL/v2efQfS9YDyPOwfMNzKdOxZJ6tI8/lY6wztY3DL0gWtdbTWZFpZ8osbb/babesLKL+h8rUgN/mCaM1U8N+csldBxyv7kte7/Nlaj2n/m9zHOg7rizD/3f5GkCkmTllDe3vcZrY3iEwi6/Si7xSrbJnBTC/UXkVa9ut23VrP1YlDJhZOsWJuv39ikXEvgH3L9pog42Y9zum1Klv8+Xi7+Pi9Jry+Sbq9TljP1R57p3OSrz/nzzglXfecrU7Zi0jbP+h7SUL4EWmn1zR5LhPHjjTEXW7Z3nfkfta6VqfXat7P6XXf/nxye310e97ZX/vk61+m16RMiRR7e/b3g7CuyWzXrlU8syWtrG2pEGj72LwKdSaR5vjwhhsKs0W+898LSqT59JzKPfiJaH8xddpP/s5JNqxC4CTBbujdPuXZ642cnohO4/EbYrcnh71tfoK9KG66sd5U5PSks77hOcmUk0jzm4D1yekk+NY3f2u7TmNwetORPK0vsl4lSV43TjXSTi/w1jcf63VhfcOx/97edq7jtb+RO12TmbI/8k3Neq3brxU/MXG6Vr2+MLv9d4fb5E1ek07teREaFSLNbTj9K9WJI+838Kg+HW6adXp+u72O8L4sT3xTj9/SDqfnltNzyIml2++sNxtmuyaySX6mWGSTKfsHPafYS+nykx30ItLy+Sqf117ESYVIMy+rOPu56Svba7XT9ez2PnSBmMHCepOZ0/PdLXHD+3IWn2fBcHtNcoq9U3tB3jtyuSbdrlf7eL3cbxSGQGcSaqckhptIe7mnyq97FNP+kRZpp0BYXyDd3mSs4uz0hLdmFO1T3Fhr9DK9aHkt7XC7QPkF5aQTx6Rn/XB7geEX8GyzWAQRBa/jt48z2wu513btkpTpTdT+YcQe92zHWmXM7weeTCJtf4G2v9nKvuy/z3W8mWJgvV4yXVOc8be/0Nr/tZ5tnNYPB25x93L9ZpJM+cEo01i89OEWd783G1rF2YtMyX6dyha8/CvVr0i7XYPc/5r3PjJkyO31z4lxpoy0/XXJ63Pfq5y4PX/k752eB0HG4EWk7Ry8ipPXGyczZaTtM0N5LY/I9DqR6W/213yneDkx8zIuPyKdLQklX7+yfQDzmsH3I35OzzO3xIFb4sVPf373tUq7NVmS6WZD7iPbfxD9jqNY9o+0SGe76cTtTcb+r0278GR6c7K+iLi9KfHF4ecF2/7i4fRGJoVf9ZPeKeuV7YOE/eK3fngJKtJO/9az/pcgmyhZxc8ev0zn4zUr5Pai7Uek3cZh/32u47Ve35myLW5vWpkEzvpB0k9MZHyzPWedXlid+nETCz4+W22qnxdvP/+1kO16ucHIS0mTl9cQvyJtfaN0+9d7ttc/awY6CiKd7Xq1vmZ6YWq/PrKJtNtrXrb/uHh97eHx6BbpTO9t9iQHjy9b6V+m1worbz8i7RZLezzyIdJO5+H2WhJEpJ14ZytRsnLOJtJOr6FO/yX181pazPsWpEhbn/hOb+xuNV/yQpDimOkNx88Ltv1Fy+mFivt2GpcKabBn5Z3emOS52kXeLRPjNi47F3nu9n+12sfgR9rsccmWVWS22epodYq0ivHaPyzKa9dequE0B7DThxrri6C8BvzEhI93atfrv1Xt/K1Cbx2bU/1lLlmUICIt38jdPvRKDtbniJ2lV/HwK9Ju0mN9/mUSU7scRkGkM2U67eUdfl6X5XWVTaStUuIkC27XeJRFOts5WaVNPues52mX2WwJFsnNq0hnen7Y/xugW6TdPiTLc3R7XYhyaYc1PvwYddL+PhYUpEh7yUh7+ZebKpG2PtG/fO404+Y1L4IsX8ByEQXrGyv3efKk4x0XPnF7A8pVpL1mRTO9GNrj4JaRzoWTTpGW2YZcxmt/mss2rcKUiT0fn22RDT8xsY/H+hzM9iHGeo3ymzWXjHBdfTY+8g3NT6bGPs4gIp0pI+0mFE4svUhfEJG2n6NsQyYVkJHuSCibSLvFyem/ffasoJf3GT4mXxnpbM9Nt/+e+ckKW5l4FWk+JqoZ6UzPHy/3NYUh1NY2MyUvstVCexm/P8Usjr0LUqStWQqZHbK+KWf617o17NlKIPyUYVjfzLhMwf4Cxn+318J5HaeXS1UymTx+tDEjhtPNk07Z+1xF2u3F0E9G2j4G+wuZ1+xeJk5u2aMwSjtyHS9fFyyP9vp+O1O3/3xk+reulVGmcVpjwvstfHl1p1p+r/3Ys1XyZ6vo8xs3C7Z9Va1cRdOvSFsztvJNx/rG5af+ONOHN1nPbL8pOdtz3el1xC4lfsYYhYy023Wko0Y6F/GIckbaawbZD3s3Sea+eOPXK7fXJKfXmqjWSDvd5Cqfl9muF/sHLTkrT7akgdvz3qtAex1ftnKlbK8/xfr3ghNp+ycq+QT1MmsHXwT8wsGbvJHG6cKScu5HpK3/DnKb7cJtjPZ/17NQ+H3iWZ9wTne0ZzrPXGqknT7hyt851UjbmcpxW8/XSZ7c6ruY+x+EeGbLvvqRC6+10PYXL6tw5TJe2b/1OnLKjmUSWXkNO32gkzNGuGXc7DGR+9mvK78vytaSF3tWxa2cwv6m5vZ8d3uB9yPSTteizE5Ljk7MrNl5a8yczknuK/9j5VV45PnJMTrJvfW/YE7xd3sNcJq1w8uMPTwmea16+a9Btn/R29twEhovWX77tZApI50tQ5dJnKIs0szA6VqRMVu3cYuR2HG6qdL6Xma9ppxel+xsM90Ma59m1On54TSebNeNn/fpbCLoRZQzibZT+04fyLONI1P8Mh2bafxBx+FlrIW+T0GJtHxzsL8Ju92A41arapdUe+0n/52f9H6foE7ZcXmBOdW8Or35ZGoj08Xq9uJnPcbpPP/hp/9hZD+liGZ7Y3d6I7PXfnN8WG6tsz5YBcg6LzOPz0n2+JO8/fdutWteymisL0ySiZd5pK1ZYb+Cnct4na5dL/cDZJpHOn0tLp9rPPQTE6dz8TMFmb0/pxo9pxtw7M/BoCLt9tyR5yCv4Uxz1NtnEZBt8vPnP37xD44lVbyPve7bHkd7rLPVnTvda+F0jL1O1u0Ddi4i7SZrTryz/afGfl6Z5pG2/3fPy2ujnVG20g3Zpps4RV2kpTRb56iW5+RUDy3/xtcJT2fHi5C4zels5W3fxx5Hfk3KJsOZ2st2rN/36UzXSrYPVtb3Eb/JLh2y6XbTqP21X8dYCqmPSIp0IQHGuYBAXAlkE5u4nhfGrY9AphsF9Y0ic0/ZaqSDjtOPSAftA8eBAAjknwBEOv8xwAhAIJIEINKRDEtsBhWWoKoGENY4IdKqI4X2QCCaBCDS0YwLRgUCeScAkc57CGI9AC5JWbzsrchPpeVUlhT03/L2MhwvteGxDjIGDwIgQBBpXAQgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANBwCAiAAAiAAAiAAAiAAAhBpXAMgAAIgAAIgAAIgAAIgEIAARDoANPshu/c3KGgFTegiUFVRSt27VND+2iZdXaIfRQQG9etCeL4pgqmxmX49q+hwQws1tSQ19oquVBDg5xw2EAABdwIQaQVXB97YFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6gUiHABVNFhQBiLSCcEKkFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6gUiHABVNFhQBiLSCcEKkFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6gUiHABVNFhQBiLSCcEKkFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6gUiHABVNFhQBiLSCcEKkFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6gUiHABVNFhQBiLSCcEKkFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6gUiHABVNFhQBiLSCcEKkFUDU2AREWiNsxV1BpBUD1dQcRFoT6BC6iatIr9+4ha686W564oG7aMLYkSGQQZMgYBKASCu4EiDSCiBqbAIirRG24q4g0oqBamoOIq0JdAjdBBHp+x95hh58bEGn0dx49SV0y7WX0bzFK+nOex+me26/jmZfOD2EURP5Fenv3vpr2l9TS/Pn3pMej45xhnLyaFQrAYi0AtwQaQUQNTYBkdYIW3FXEGnFQDU1B5HWBDqEbvyKNAvpm2s3dsoEs1wvXbGmg6iGMNx0kypEOszxoe3CIQCRVhBLiLQCiBqbgEhrhK24K4i0YqCamoNIawIdQjd+RXr8zDl0yfln0K9+cr3raOySe9bsW2j61Am08q31VHOwzjiOs9dDBw8wMtdys5ZpXDrnThp33LAO/VizyvY+pOBbB7Vh+Vzjxzt++RAtWLKqw3hPmzKWfvi9b3QqD7Hvaz9XHle/vj2NtvgDBW99e/egFfPuzxgdp+P4fH/660cynic3GrTPEC6XomwSIq0g7BBpBRA1NgGR1ghbcVcQacVANTUHkdYEOoRu/Io0S/GYkUPo0ftu8yXSLNBSlGVpiFVAWRZ5k6UXQUSaxVjWS9vbcyrtsMu4lGgp4Dwe+wcHbnfztl3GBwEuY+HNCxOn46QkZ/rAIPcJ0mcIl0tRNgmRVhB2iLQCiBqbgEhrhK24K4i0YqCamoNIawIdQjd+RVrWFcuhOGVj3TLSMovtVJbBEssZa5nZ9SvSdjQs6089tyzdnheRZmm2CjK3KaVfyrXMDls/SPDYP/h4e8ayFqfj/Ig0Z8H99hnC5VKUTUKkFYQdIq0AosYmINIaYSvuCiKtGKim5iDSmkCH0I1fkbYOQQqx/J0sg/Aq0tabEe3iG0SkOTMsS0fkmKQAZxNp3t9pFhD7uUCkQ7gII94kRFpBgCDSCiBqbAIirRG24q4g0oqBamoOIq0JdAjd5CLS1uFYyyLyIdKcTea6Z5m1tWeSIdIhXDxF0iREWkGgIdIKIGpsAiKtEbbiriDSioFqag4irQl0CN34EWkW5D8/u9TxRkMprlwHbc/uypsN7aUd2TLS9nIGt5sNP9m+27hp0Vrb7FekubY6X6Udmc6TWQbNgodwuRRlkxBpBWGHSCuAqLEJiLRG2Iq7gkgrBqqpOYi0JtAhdONXpLn8gTertMoMtMwIq8hI22umZW326OGDjVpkax9S3K1izlJsHaddrPlvQW82DFKv7FYjne08IdIhXPQ+m4RI+wTmtDtEWgFEjU1ApDXCVtwVRFoxUE3NQaQ1gQ6hGz8iLbuXkmodjvUmPRUizW1ba55ZoFlg5aIqbhIsx8Tj4UVjrMIvZ87gfXKd/s7vjX9uIp3tPCHSIVz0PpuESPsEBpFWACzPTUCk8xyAHLqHSOcAL4+HQqTzCD/HroOIdI5d4nAQiBUBiLSCcCEjrQCixiYg0hphK+4KIq0YqKbmINKaQIfQDUQ6BKhosqAIQKQVhBMirQCixiYg0hphK+4KIq0YqKbmINKaQAfoprGR6OCBEjpQI74OkPji7yXid+Kx+N0D/688QKs4BASKhwBEWkGsIdIKIGpsAiKtEbbiriDSioFqag4irQd0IpES4ZqUHEshtomyKc7mvvy4ocF9fG1tesaOXkAgrgQg0goiB5FWAFFjExBpjbAVdwWRVgxUU3MQ6WCgaw+lssRGtrj98cGDpggbQpzKHPPjGvG4rrbEV2dduxL16dtGvXu3ie9EvfuI78aX+L34/vOfVfhqDzuDQLERgEgriDhEWgFEjU1ApDXCVtwVRFoxUE3NQaSJ6uvNUomOEpzKDBtinCqnSGWPjdIK8TiZ9B6kqqqUCAsx7tM7JcgpKZaC3JsF2RBnU5T5cWWlex+okfbOH3sWJwGItIK4Q6QVQNTYBERaI2zFXUGkFQPV1FyhiXRLs5BcKb8HTUE2MsQOQnwg9XfOGDc1eQdeLhLBfUSWuF18UxljI3PcnjE2BJkzyca+bcQZZr9bjagJ2ZFooZ2trbSjVXxPyO8ttHH8CX6bw/4gUFQEINIKwg2RVgBRYxMQaY2wFXcFkVYMVFNzcRJplt2tW0pp544S8b2Etm8TJRP7S2jvXlOWD4lyi892+yufYMycLR4wsI36Cgnu2o1o6LFt1KtXG/Xs2UZHH0PUrXsbDRhgSnG3bm3G31Vte4Uo7xSCzLJsiLIQ5p3GY1OYmzIUQredNFHVMNAOCBQkAYi0grBCpBVA1NgERFojbMVdQaQVA9XUXNREmmuPt24toW3ia8enpiyzPPPPXiS5XExkccwgU4J79iIaJB53FfJrF2H+G+/D+/IxYWwNbUn6TAjxZyKLzF+7LY+N34mf9yfFXYgZtoFlZXRMWTkNFmnwY8RA+bH8mj1ImD02EAABVwIQaQUXB0RaAUSNTUCkNcJW3BVEWjFQTc3lQ6RZiFmSN28qNUSZH7Mos0CzSLtt3US2ePiIpJERHj5CfiVFlpjoKJEx7tuvzXisaztiE2UW490paTYft9DBLIXUg1iQWY5TkjyolEVZyLNFmktLnJmgRlpXpDv3Y1+dMX8jQc+ZCECkFVwfEGkFEDU2AZHWCFtxVxBpxUA1NReGSHPN8c6d4kuUYPDXrl3iSz4Wv9+3z1kMS0uJhgxto8FD2ozvxteQZPvP4vcVGW6+U42sTmSLzWyy+N4hs9xiZpjFV20GUS4TApzOILMYG5JcToOsmeUc0uGFINJSSO2x42XFr7nyIrrz3ofTf7rn9utox669nZYP5x14SfLpUyfQN782i6686W7HS4GXHp95xmTHv1uXI7cfHFVpjuq4VD8Pc2kPIp0LvdSxEGkFEDU2AZHWCFtxVxBpxUA1NRdUpDmrLCU5LcxCkncZAl1KR444nwDfcGfKskWQDWE2xZlLLXRtLMFGBjklyZxBliUXshyjLoMolwtRHmQpteiQWWZhrqigAaVloZ1OIYn0Ew/cRRPGjuzEykkW7/jlQ7Rn3wF69L7bjP2/e+uvje/8cza5dPr7/Y88Y8g5i/Yt117maQyhBdVHw9nO1UdTBburFpEeP3OOb4D8SXH+3Ht8H5ePAyDS+aAevE+IdHB2+T4SIp3vCATr302kefaLjlll8yY//trNsiy+eJERp41nrpBibEjzYPGVzjCbJRg6Ni6rMOQ4Lcrt0iyFmcsz3LZKEhllkTFOyzI/lqUYqXKMo0IQ5ZLGBioVk1CX1tRQ6cEaKjG+88/7zd+LOyv5cfXC53RgDLWPbDLo9nfOQP/oxiuMsXHWWmaUg7YnZdopM8191RysS3NgB/rFbdcamW3+AMAbPz5tylh6c+1G4+dLzj/D+L5gyar0z7/6yfXpNlj+5b78S7cPEvy3eYtXdsjMSwdzGpd0M7f2JR8enxwb92E9b7f+Qr0QQmpcm0hn+peG/dz4Ylu6Yg1EOqSgF3uzEOn4XgEQ6fjFjuuR6w5U0qbNCdq6TYhzqgzD+C6+eDYMt+3oY2TpRXsZBpdkmGUZZt1y2BvfqGctubDXKLMs8w1/blt1SpTNcouKTiUX/Pt+ikW5pKmRynbvorJPt5vfd3xKZZ+J7/xYfJXuF7K8d483dAGWNuRlx1ev9ta8yr2qq4mmTevcYlDxlbLXt3cPuvzic9KZ5KDt8cg4scjlI7MvnN5hoE5tWn/HO7NIs5yyLMux2X+WrsUZ9ZVvracV8+43+uH9f/Pgk+mf7ZTs47p0zp2Gg7mda6b25TEs/daM/v6a2rTXufWn8nrQ1RZEWgFpZKQVQNTYBERaI2zFXUGkFQNV1NzePR1rla11y/zYbbU9niuZs8rpemVRiiHrlo3ssvibuCcu1O0Lrk2WN+91KMEwM8u7xfRwzeSe3e4mJLi9RpkfC1k2buTjG/zEd1Gz3EflSYgxsQyX79hOpSkxNkRZPhbCzKLsZUv26kVtvXpT69Bh1CY+lST79afkgIGU7NnT/C5+7ntV59xiPUUAACAASURBVDKEbG1v20Y0YkS2vdT/ffhwMXXhVneRtv9FZmgziTFnXa0CyG241Vzz36w10k4ZYM7wWqVcjsmrSLuN2X68k7CzHHNNuF3ieQy8v1PZiRubTO2PGjYonUmXpTRS/OX43fpTf1WE3yJEWgFjiLQCiBqbgEhrhK24K4i0YqAemxPu1uFmPjOr3F6GwTf6cZmG09a9O9GwYWKKOCHJgwZ3vKmPpXng0eGWYPAcytZZLtLTxLWIcoykeTNfa4asaw8pyrZp4YwMc6p2uVeZuINR0ZbOJMsM8me708JcLjLMnjLJYqyJQYMNQU6K7/w4ccwg87v4Yknm7162IDXSn39OdNVVXlpXu8/RRxM9/ri7SPupkeZWZBaXH0clI+1HpJ3oOmXD5blab7qUme5MIu3WvpNI29uxl3bI/tReEXpa0yLSek4lf71ApPPHPkjPEOkg1KJxDEQ6vDgcPsxlF6XGjXzmzXwdb/T7/DP3Eox+oh7ZnklOz4whssqjhlXS4Qax8EeLj/WuPZ7q55b5kzl73CG7nJoNI5FBlHuKaTwMIZaizLNeGI/NKeMGVZRTjxI1osyZ4jKRSU5nj2UmWUqzEOWsWxZJlqKctR2POwQRaY9Na9staClGGDXSTz23zLG8IoyMdKaa6Ezw5VhYup2kmI/ljLKfDyZSnJ3KfK39OWXLtV0oATuKjEjLGxL91FIHPGflh0GklSMNtUGIdKh4Q20cIp0bXp4STtYm8418dmHmKeXcNqP8wlKGIUsvuFaZpZnrU922oLN2yPaaRA3yhyLl/VFzE30kZHkbr9InMsq8Ul+mqeH4eJ71YoiQ4qFCQIcKKR4iRHmIKLsYavzOXIBE5cYZY84cl239hMo3b6LyLeK7eMw/lx46lLkrzZLs5byLVaSts3QwJ+ssHkHEPNusHVJOrRljpxpprxlpt5IU7sdp5hJZE81/91Imkql9bkPeJCn74g8lY0YOSddMZ+rPy3UZpX3yKtLywpJAgn56yjdQiHS+I+Cvf4i0P15R2hsinTkanHg1MskpSTbmVTYet5dh8BLYTlulmDs5Pa8yy3FKmtuFuY1c1uzIeon4EenNLMzGV5Mpz+KLf+e2VYlBsRCzKLMUhy3KPA5DllmQN31M5du2mNJsCPMWKjkiUvsum1FuMWKUY7mF6kxy1qB43KHQRdpeYsAi++baD4zZJuyJvTDnkeZwWJ3IbdYOryLN7bH8W2fN4N+5eRaL7eZtu9JXhbVe2j4uOWuHW/tSpK2XmH0mtkz9ebw0I7NbXkTaPmWKW81OZChlGQhEOi6RMscJkY5XvKyjhUgTNTSkZNlehiHlWXx323r2St3Y12ExErMsY5D4HS9xHcbmJNJcu7yBM8xCmDnLzNnmD8XjJpcyjNFilRT+Gi++RokvzihzZnmAyhv5UidvzHrBZReffmrc1Gc+5u+px59/5oiprUtXShw7jBJDhxr1ycbjIcca31vFV/KoAWHgDbXNQhDpUAGh8U4EsmXsCw2ZVpG2zictP+24TQUTJ9AQ6ThFCyIdr2h1HG2xiTRnj9f+rZTeeL2U1q4pFctc81cJuWWVmRZPCTf02GR6eWuWZF7qesRI83e6t11CkvdVltD7h+vpYzHwLa3N9ElzC20XZRn2jT8CjCyvpJFikRH5fVTq8UBRr6xyK2mo7yzLLMpCmMuFOLvd1NfWrXtHUR4qRFlIM4tyQjxO9j9K5TDz3hZEOu8hiN0AINIhhcytBhoiHRJwNOtKABnp+F4chS7SPOfyGiHOq1eV0iohzxvWlzpKMy82MjQlyMNHClEenhJn8TisrHK2q+ZAImlIsvEl6pc/kY+FNDc5TB/HN/KNFJnlkSKrPEp8GY+FNI8QIq1q4zKLsh07zKyykVEWmWXx2KhhZlne94VzZrl7DyHGpiCzHBsZZfmYZ8Lo10/VECPfDkQ68iHCAPNMQFtGmoWZJzWXk4PL84ZI5/kKKMLuIdLxDXqhiTQvRvL26lJ6+y0hziuFOL/fcXYIvg9u4uQknXxKkqadkTSWth4hsspcopGvjaV4i5BjI7OckmYp0CzT9q2XmBXjuKpqIcjlNFzc6GdkmkVBNgt0FwWzYZTU1QpR3mGWXaQEOV2OwXMtu8ypzHMlW0XZyCqnpJkfJ/v0yRfiSPULkY5UODCYCBLQJtJ87tbSDlkXDZGO4FVR4EOCSMc3wHEWabGSNK1fV0rviyzz++tK0o+t99HxSn4nTkjSiRPbaMJE8V085tKMfG3bDFFutWSazcdcrmHfKsRNf+nMMmeYjS9Tmo/r3TWn6e94touynbJOuWNWmQWal7R22pK9e6drlI2scqpeWdYu89+xZSYAkcYVAgKZCWgVaTkU3GyIyzKfBCDS+aSfW99xEun6ehLCbIqzIdBCnj/Y0DHjPGy4EGchzKY0m4+POkq/OO8V8y2ns8uiLEOWZ/B3p5mfj5WiLGuZU6UZPHuG0+Zl1o7Sgwc7Z5Ut5RhuU8dx5tjILBvlF6lyjFS9spFZFplnbMEJQKSDs8ORxUEgLyIt0VqnVHEq+4hLCHCzYVwiZY4TIh2veFlHG2WRPlAjbqhbz19CnN8zBfqTzR1n0Dj+BFOYDXFOyXOPnvrEuS6ZEJKcyjCzMIt0uJTmw2KuZvvWX6zqJ2uX0xlmkWXmGwB5fmavmxTplj370rLMN/SlZ8Ew6pY/JS7TcNq4JlmWYaRnw0jf5HcstYmaZmzhEIBIh8MVrRYOgbyKtBUjFmQpnIsq6mcCkY56hNzHFyWR5pX+TGk2v/MXz+EsN1EabJRmmNJslmzwY3FPXehbQvRgSrLMLps3ALI087Rz9q2rqFU2RJkzzOkbAPnmv0rilf/8bjx9XPnGD6hi4waq2LCeumzdRG2bNlOZmGvZbWsTddSJkSONeZb5KzGCH4uvMcd7Xs7a7zixf3YCEOnsjLBHcRPQItIsyX5WLORM9dIVa0hO+h31ECEjHfUIdRwfRDpe8bKONp8ivX2bEGZRomHWOZuPv/iiXZy7dBHinC7TMOV5/Inql8S2R2+nkOWthjC3S/MnQpq3O9Qx87FmZll8idrlUVzDnKplPjrgCn/lmz4yFiapeH8dlX/I8vyB+Pkjx4sMshy/5x5EOn4xw4j1EoBIK+ANkVYAUWMTEGmNsBV3pVOkP/qQpTmVbTZqnEuprq79hHr34Sxze5kGZ5tHjQ63TGOHkOO1zY30QXOzsXgJr/rHv3Pauokss7GASZW42a+skk4Q4jy+opr6BlzAhGe/qHh3rSHJnGXmbDMLtNNKfizMrWPHUcvY8dQyfgJ1PXkyHR4+ihqOOkbxFYHmwiYAkQ6bMNqPOwGItIIIQqQVQNTYBERaI2zFXYUl0jyjhvWmQPnYOqPGwKOlNLeXaYQ9owZL8huN9fSGWPWPvztJM9cqjxYlGZxd5lX/jq+oMqR5eMD5mMs+203ln2wSX6IUg79vNh/z7+wbr+TXOnpM6us4ah01WnyZP7f1aL/Jz8vNhoovFTSniABEWhFINFOwBLSJtF+C9nXZ/R6vc3+ItE7aufcFkc6dYb5aUCXSvMx2e5mGOaOGfQ7nYcOEME8yp6AzMs/icdgzamQTZ65XPqO6q5DkChonpPmEyioaLR5XBZiPubS21hTllDQbwrz5Y0OaS+qPdApxYtgIUa8sJNkQ5ZQ0i++JQYOzXg4Q6ayIIrsDRDqyocHAIkJAi0hH5FxDGwZEOjS0oTQMkQ4Fq5ZGg4r0wQM8b3N7mQbXObvNqGHcFGgIdBuFOaNGS1sbrReZ5nWiVGO9SH2vF983iJ+tG9cvT6yspglCmCdWVdEEUZrRw+/Nf+LmwrQsywyzkWXeRKVf7O0UN54hwy7LMstMAeuoIdJanh6hdAKRDgUrGi0gAhBpBcGESCuAqLEJiLRG2Iq78irSez5PLXiSkmcWZ+uMGjxzm3UKOvlYVESEtvGKgOsaWZpZnpvE90b6UNQ6W7cxIstsiLMozzhRDGaiqDXmWmfPm6hRMW72+yh105+4+Y9nzyjftqVTE22i/QSXYhjZZc40tz9O9u3ruUsvO0KkvVCK5j4Q6WjGBaOKDoGiF2n74jAcGvsMI5fOuZM2b9tlRM2p5AQiHZ0L2stIINJeKEVzHzeRljNqmLXN7jNqWKejC3tGjXoxL7ORcW5qovcNeW6kj61F1wIx1zKfKLLMpjwLca6upmryPj8z3wBYueYtqlj/HlWsedt47LQkdlu37uLGP3Hz34kTqfWE1HdxI2CyVy8tgYZIa8EcSicQ6VCwotECIlD0In3W7Ftoxbz70yG945cP0cq31qd/x6K9v6Y2PRUfS3W/vj3p0ftuSx8DkY7XMwIiHa94WUcrRZpn1Oi4+EkJ1dW2C6icUaO9TCNJo8eEO6MGL2jC5Rnrm5pT5RpNtNkmzmM5y1zZxZRmlmdRrlHpUZzLtm+jCs4wyynm+Lv4IrHAinVLDB4iZHkstRw/zvhuiLP43ta1W94CD5HOG/qcO4ZI54wQDRQ4gaIXaXt812/cQlfedDc98cBdNGHsSGLR/tGNV9DsC6cbu85bvJJ+8+CTHeQbIh2vZwlEOl7xkjNq8M2BWz6uoDffTho3ClqrInhGDVOaze/8NfTYcMW5VgyMyzM44yxrnXk+Z+t2oqhtniCEeSJ/F+Ua/LjcQ8LZmDlDCvNHG0V5hljY5MONnW4CTAw82hBlQ5z5+/GmOEdtWWyIdLyec/YPr/EdPUYOAuETgEjbGPNiME89t8wQZbtU865Ov9tf2/EGofDDhh5yIVBRXkpdKsuptr5jfWoubeJYdQR4Ro11YoltLtFYJ1YN5MecfbZuw4a30USx4MnEybxaYBtNEgJ91IBwxfmAWF77PSHN68Sqfe+JWuf3RNnGNkvGmUfINc2TjK8q4zsLdGmWpbRLRHkGi3KZqGUu+0B856zzBx9QycEDHc452b8/JYQkJ0SJhvHF4jxuHLX1UVvPrC6S7S317FpJDc2t1NIa/gI1YYy/mNvkD0HYQAAE3AlApC1spCTfc/t1Rgbaq0g3teDNIU5PslJhPGVlJeJNPVzxihOTfI61pobovXdL6J13+DvRu+LxR7aF8caOJZp8UhudcnKJMZsGPw67vHefKJlY29BI7zQ20LvC7vnxdos4lwloU8Q8ypO7VJnfRX3zSby8YaZNTDlXKmS5ZIP4Mr6/bz7es6fjUX36UHLceGpjUTa+px4PHJjPUAXuu0Kk4ROJNkriKReYYb4O5P/gYQMBEIBIZ70GpDTfePUldMu1lxn7exVplHZkxRupHVDakd9w8Iwaxk2BItvM3/lrx6ftGWdO4FqnoJOPeUYNr7N2BDnDvYlWcVOgqG9uakiVajTRbvE7uVWIgXF5hjkNHX/vYszlnGkr3/qJuBFwHVW+9YaxKiA/dloJ0FgF8MRJ1DzpJGqZPIVaTppCvDpgoWwo7YhvJFEjHd/YZRq5k98U5pmGf1Z5yUhz3XHNQctau5bztM+YET4Cs+75znsfTtdFW/t0qpHmfa3jhEjriJK6PiDS6lh6aWn7dnMWDeNLlGisF6UaX3zRLs4ikZuat9msbeY6Z7cZNVSK9B4hycY0dOIGQaPOWcys8blFnKvFtHPG/M1GnbNZ33xCJnEWGWy++a9y5WtUtWoFVf5NzKCx15ZpFsBaR4yilgkTqXnq6aY0i8c8q0YhbxDp+Ea3EETaaZIAjgiXcr6zYVOHyQPGz5zTaXYuKZ32KEoPkA4h/y7/qy1/9tNmpv+Iy/bcxsN/tyYD7fvLe7+icjUWisxrF2m3CzpfgXW6edA6Fszaka/IhNcvRDo8ttzyxx+l5nDmbLOQZ651ts6o0as3L7WduilwItc4e59RIxeR3i1E15zDWcyswQItap33irpnuXUV4pyWZpEN5pk1jhOZZ7etRBzPsly5epWRca5c/UanbHNywEBqmnYGtZx8qjH1XMvkk7VNORdulP21DpH2xytKexeCSEvRdZra9porL0pPJsBivXTFGpHoq6X/+tUPjQkHeLOXffLveIavBUtWpZNqblKYrU2r3FpnDcskmX4F1O/+uq6/qI7L7/lrF2n+ZGb/tOZ30Kr2z/SpzjpGzCOting02oFIq4uDWJwvVaaRyjanMs/WGTUGDGRxFtlmIc/G9xxm1PAj0juFOJurBppZZ5bnfWKVP7n1KC0Tczi3T0PHEj2q3L1Uo3zLZqpYJ+Zr5jmb179rPC7d90U7TLHqX8uESeYXl2ikHrdVVKgDHtOWINIxDZwYdiGINNO3u4d8/7fKNb/XzzrrZCNLPbB/H/rVT653FWm7nLtJYbY2rSJtbVOlSNurAHg9jF/cdm16hjI+SZ6t7LQpY+nNtRuNc77k/DOM7/xhQf4sefDP9jU4MmW77Rl7uR6H07jmz73H6M+tfcmFxyfHxvtb4+jWX1jPwqIWaVVQUdqhiqSediDSwTmLySqM0gxZ28x1zhve73gz0rBhItucEmaWZ348QNGMGplEeruYeu59Y8lts0xjXXMDHUi03wjcUyytLVcNNDLPotZ5RAZxrhA3AhrCzOLMAr3u3Q4ZZ2ORE5blifw1WTwWX+NPDA63gI+ESMc3uEFEulFMDbn6SL32k64Wz/Fp3bo69stixptcA8Je1mEV10+27+4wza1TRtr+3+ps91S5tWkVUOsYVYp0trFJkWY5ZVmWImr/Wcqqfb2NbP/Zt3+I4Q8XLMxu55ipfXkMS7+MpT0Wbv2FdUFqF2n56Uze0BfWielsFyKtk3bufUGk/TP8bHcJzX2knP78xzKq2d9xKjqW5CmnJGnaGUk6Y3rStb7Zf6+dj7CK9NbWZlGe0VGcay3TQvQpEzXOllUDJ4hi7GFlztnhEiHf6WyzEGYz6/weiakm0oNI9utnyrIhzaZA89La2LITgEhnZxTVPYKI9DbxL6kRGz7UfkrDxR3JW8ef4NivPYPMLuJU1iEzoixjUnKd/nttr0V2kkJZ1uG1TR64bNeLSDudqNcaaWv7UqTt5+v2s1NlgZ2ndWy8v9dx8XGZ2h81bFCHtT54f/t9bm79hXVBahfpbJ9cwjrRMNuFSIdJV33bEGnvTJe9XEZ//EMZLV1Sll5Ajxc6Of3MJE05OSm+J0JfMVCOtkmsHPhRZZKe+eIgrWqopw0i62zdysWsGpxpPqOqK00TM2pMFeLcTdQ9O22lBw92zDYLaS4XC59Yt8SgwZ3KNBJDhnqHhz3TBCDS8b0Ygoj05y2tdNW2T7Wf9NEV5fT48GNd+5WCxjL2/Tt+22FhNXuSj7OcsrzDnpHmfccdNyxd+sEdOomvlzZ1lHZ4zUj7EWknyG5lu/ZSC5npdvuwwHFya99JpO3tuPUX1gWpXaTdAMkTzMesHbnChUjnSlDv8RDpzLw/2VxCLwtxfkl8rVppiigvuT3r/CTNOi9Bsy5IULbpklVFtEZkhJc2HKaljfW0XMjzESHTcqsS4jxFLLd9hhDmU8XNgVOEPLuJc9nnnxmlGcZXKttc9un2DsM0ZtOYlMo2c+ZZPE7266/qVIq6HYh0fMMfRKSjeraydOKk8WM6zNbhdr9U3949OizOZp9RwyqOdpnz2qa9tlhmwpmhdZVlK1O/N+mFIdJBZwCxfihxkmI+T+t/A+zXktO5uN1Mav2AE+a9edpFOqpPsFzGBZHOhZ7+YyHSzsxXvFpKL78kBPrFMtq21SzfGDdeyDML9PkJOvlUPQsPbRMlG4vrj9CLjUdorZgZo5XvaExtJ1RX0QVV3eksQ5yrqcol48zp86rXxTR0ry2nSvHdmL9ZtGXdjBk1zjybmsWMGs3TzzZm1cAWDgGIdDhcdbRaSCIthYtvdstU1iG5WjPYLLVWGeOyjQcfW+A6a4e9rMOtTauQWtv0UtrhR2bdbrbkNuzS7vahQPZnr0mWwsrf5Uwn1mtT1kRbxVa25VTGkal9+1j5Z75pcczIIema6Uz9hfGcgUgroAqRVgBRYxMQ6XbY+0W988tLSo3SDf4SJcfGxuIsBfqYQeEuR1cnbkx6W8yq8ZZYQfAtsRgKf8kee4mbh6ZymUbq65JBfcjt+caLn1S9uoyqXnnJ+G5f+CRx7DBTnM+YTs2nTKXWMcdrvOqKuyuIdHzjX0giLaWLv6+Yd386KCxil198TnoxNvkHmcH+4fe+YWSH7VlNObME/57Xl5Ab//ybB5/01Kb9ypD/lXfLaPNNdnI8TleVUy0y7yclnR+7zdrhtbSD25DT/1nH4Cb21pnPeH/rGO3jkvXkbu3z8RwL6yZnAZG/y9RfGM/EvIi0vX6FTyzMtHsY4KxtQqTDJqy2fYi0qOcT09SxQHP5xrtrzfKNQYO5fMMU6HNFCUeY204xw0ZansXsGh9a5ss7trzCEOdTDXmuFnM5t09JZ73ZkEXZKs4s0umNp6ITGeZmseBJ85lnGQLNGWhs+SEAkc4PdxW9FppIq2CCNvJHwG9Zi46Rahdp+enD+slFgnH7JKUDRC59QKRzoaf/2GIVaZ6AgrPORgZalHDwUt28nTLVFOfzhECPFaUcYW0fiJsD3xblFTLzbF1++0Sx8MnU6vbM88Cysk7DKKmrpWM2raO6ZSupYs3bVCm+SvfvS+/HczdzmQYvfmJknDGjRlih9N0uRNo3ssgcAJGOTCgwEEEAIi0guP0LhQX7qeeWdfh3S1yuGoh0XCJljrPYRHrHp6J8Q4jzUiHQPAsHb13FVKt80yAL9KzzksbNhKq3hKht5jINzjy/zSUbYhLqw6mbBXmGjaniRkFTnquNry4O9c58YyALsxTn8o/bp9TiWTVYmA1xPtn8jsVPVEdRTXsQaTUc89EKRDof1NFnnAhoz0i7rWyY6a7LqAOFSEc9Qh3HVywi/eZqLt8QGeiXSunDjWb5xugxbWb2WUg0T2Gnejsg0t5GyUaq1nmN5Qa/ftZ6ZyHQkyurO3VftmtnB3GuWPs2laTKPtrEHLEl06bR4Yknm5lnIdGJYwapPgW0FwIBiHQIUDU1CZHWBBrdxJaAdpFGRjq210rBDLyQRbqujszss5h5Y6kQ6Lpas3zj7Jmp8g0h0MOGq80+bxezbBglG4Y8N9Kmlub0tTIiVe9sZJ2FPI+0rSTIM2nIbLPMPJd9tjt9fOvo49qzzkKcj5o5zfVmw4K5QAvwRCDS8Q0qRDq+scPI9RDQLtKokdYTWPTiTqAQRfqjD3nqOjMDvfoNM/vcv7/IPqemruObCEVCV9m2zijXaM8877WsADhZLIpyKpdspEo3+pd2rHcu/3CjyDq/lc48V2xYnx5XsnfvdKmGUa4h5DnZq1f675mWCFd2cmhIOQGItHKk2hqESGtDjY5iSkC7SDMnzNoR06ulQIZdSCK9/BWz9pmz0J9uN7PPEyeJ7HNKoCefpKZ8o1nUO5uzbNQbWWe+YbAxNUldNYl653Sts3nDYIWogZZb6Rd7DWm21jpbp6bjJbfba51PJc5Cu20Q6Xg+CSHS8YwbjxoiHd/YYeR6CORFpPWcmr5eUCOtj7WKnuIu0nv3lKTmfTYFWqw9QmK2N/PGwZRADxiYe/nGF+l653p6W4jzu83tS3IPELNqpOd3FhI9Qcy6Yd3KN33UPjXd6ys6zOncJso8mqeLKenOPocaz7/I13zOEGkVzwD9bUCk9TNX1SNEWhVJtFOoBCDSCiILkVYAUWMTcRVpnu+Zp63j6evWvWeWbxw7zLx5kAV65pdyn/v5E1HfbJRspLLPW8V8z3IbI+ZznipuEOTsM5duDCur6CjPYh7n6gXPUvVLi6ly9aoOf+PFT1iaWZ5Zolmmg2wQ6SDU8n8MRDr/MQg6Aoh0UHI4rlgIaBNpnq2D54nmJTUzbXJVnzgFACIdp2jFa/o7nrBCrjrIAr1vn1kyMe10Lt/g6euSdPwJuZVv1IqVBf96pJZebDhCb4gbBq1Lcg8XNwde2LUbzaruaiyQwtPWWbeK99dR9YsLqfq5ecSP5dbWrXtanJvOPY94qjoVG0RaBUX9bUCk9TNX1SNEWhVJtFOoBLSJdKEC5POCSMcrunHISG/bapZvcOnGa8vN7HOPnmLlQSHOcv7nHj1y476i8Qg9LVYHfL6+jppEDbTcOOM8U0jzV7r2oNGWVQX57yWixKNy1etU9cZKquQvS+a59YSx1HS6WH6bl+AW3xNHH5PbAB2OhkgrR6qlQYi0FsyhdAKRDgUrGi0gAtpF2m0eaSzIUkBXVcRPJcoi/cbrYtluMXUdC/TmTWb294SxPHWdmYE+bVpu2ecdolTjaZF9fupIHfFjuZ1e1ZUuE+I8S2Sfuf7ZupUeOmRK86qVhkBXvLMm/WfjRkEhzoZAi69k376hRh8iHSre0BqHSIeGNvSGIdKhI0YHMScQGZHGgiwxv5JiNPyoifTBAyL7zFPXpeZ/rq83YZ5zrln7zDXQQ48NfvPgTnE34nKRfX5NzLjxqsgoH06atdQniTrlGdXdaIbIPnMWuoM8i5k2qoQ4GwLN8rzh/fSfm6dOM6TZzD6fSW1CvnVtEGldpNX2A5FWy1NnaxBpnbTRVxwJREak7/jlQ7TyrfVYIjyOV1HMxhwVkd64QWSfU1PX/e0ts3xj4NFcviFqn1Ozb9iSw55Jc53zq6LeeXnDYXq1oYE+EYum8DZILJAyQ9Q7szzP6NKNeorVBuVWtnOHIc2mQL9O5Zs/Nv8kBtFesnGm8diYJiQPG0Q6D9AVdAmRVgAxT01ApPMEHt3GhoAWkXaaN9qJ0D23X0ezLxRv0jHbUCMdr4DlW6Q58/zSi2YGevcus3xj8pQkncc3DwqBnjAxePnG+2KKuleNzHM9vS6+DA8WNwjOEBnns6tE9rlLFzrOMlVd+ZbNRskGizOXbZR9ut04pq1LVyPbLEs2mk87PRJBhkhHIgy+BwGR9o0sMgdApCMTCgwkogS0iLT1Z6d2+QAAIABJREFU3N1qpCPKx9OwINKeMEVmp3yINAuzUbohMtB8EyFvVWLqZV5xkL9YoPv1C1a+sU+UaiwXM268Jso2XhUlHPtSqwyOE8I8QwgxZ6DPEl9yK9/4QfvNgkKiy/Z8bvwp2aePUbJhlm2cSS2Tp0QmZnIgEOnIhcTTgCDSnjBFcieIdCTDgkFFiIB2kY7QuSsbCkRaGUotDekU6TVvm+LMAv2BKOXgbfiINjrvAp66LkFnzQiefX69qZ6Wi4Jqzj5vaDEXS+knluPmkg0jAy3keUCZWYJR8d47HWqeSw8cMH6fGHh0epYNzj63jh2nJQZBO4FIByWX3+Mg0vnln0vvEOlc6OHYYiAAkVYQZYi0AogamwhbpPlmwZdZnlMZaL6ZkLczpsvyjQSNGh0s+7xZLJjC4mxkoC1zPp/Bdc9CnvnmwQmV5iqDlW+tNmuejRk3XqeS+iOmPB87LFWycaYh0a0jR2ukn1tXEOnc+OXraIh0vsjn3i9EOneGaKGwCWgX6fUbt9CVN93tShULshT2BReFswtLpD/ZLJfuLqNVK83sc+8+4uZBvnGQVx8UWWhRoux7O9yWFDcMcub5iDHrxs7UtHWjxBzPxo2Dxs2DXamitIS4bKPLwgWdFkhJ9upFTed/mRounk28QErQlQV9D17xARBpxUA1NQeR1gQ6hG4g0iFARZMFRUC7SJ81+xaaPnUCnTZlHP3mwSfTs3RcOudOmnXWyXTLtZfFDjAy0vEKmWqRXvGqeeMgz//MC6nwNm48L5xiCvTJpwYr31gjlupebtw4eIT4MW/duXTDKNswyzeGilk4Svfvpy7PPk1dn/gjVby7Nh2MZL9+1Pjli6lh9tep6cyz8zbThsqrAyKtkqa+tiDS+lir7gkirZpouO3JZOUTD9xFE8aO9N1Zrsf77rAADtAu0vJmw1HDBtH37/htWqR5Zg+rWMeJLUQ6TtFSs0T4/v0i+5yaeYMFmpfy5tWzue7ZyECLGwiPGeS/fIOzzTxt3auidIOz0JyN5u1knq4uVb5xinhMYm7o6ldeoi5CnqtfXEQlKdHmzHPD175BDV+/kpqnnRGvwHgYLUTaA6QI7gKRjmBQPA6pEEQ603/Cb7z6EoPEg48tIPt/xGXi71c/uT5Nix1m9PDBNH/uPY4E+e/2jdt1+r3cT+WMZX5E2M++Hi+XotwtbyLN09zxhSUvXCzIUpTXX15OOpeM9Pp14uZBIdBc//zuWrN8Y9BgLt9oXzzF70mZcz6LzLMQ5+XiS875PMSY89msez5bfO8hstFVK5ZT1bKXqWr5y1Sx7l2jK55to2nmuemvxOAhfocQm/0h0rEJVYeBQqTjGTfj9a1fgHq0iJ2uF2HktSz27DtAj953mzH67976a+O7/Jkf8wrMS1esoZqDtfRfv/phh4yvdBgWc+t/1rld3qSMexlLLvj8tO9n31zGVOjHahdpLuEYd9ww46KyPsaCLIV+qUXn/PyKNM8mxzNvvCxm3nhJfN+7xyzfOGWquergeSIDPVaUcvjdNogbB40FU0Tds5zzmefYMGfdMGufR4s66PIPN1L1sqVU9aoQaCHRlJrermn6DCHPX6Kmc2ZRy6ST/HYfy/0h0rEMG0Gk4xm3YhJpPlfOQP/oxiuMYN1578OdMtSyBPWdDZtoYP8+aTmWx15+8TlZy1O9yqt9/Q17FpzHWnOwzhir9W/W9vlvfE+atczD+neuCpBtyHZ+cdu1nY7J1hd/eOCMvtxUZtjj8MzRLtJ2KNZ/dwSt6ck3aJR25DsC/vr3KtI7PjVvHnxZLN+97GVz7ueuYjpmvmlQCnSv3v7KN3jOZ2PBFDGDBn/nn3k7Ucy0YSzXLTLPZwqBLt2/z8g6y+xz2eefGfu1Hj82Lc9NM75EbRUV/k4+5ntDpOMZQIh0POPGow6UkW4U93SsXq3/pKuriaZN69SvX3nt27sH2aXY2sYn23d3KEX12j4PzOu+9jU3WOJlOQk/5s36c7++PY3suR+RzibaXGPtpS+ryHPW3qlMRv/FoK/HvIu0vlMNryeIdHhsw2g5m0i/uVrcPJia+/mjD83yjdFjZPlGgk4/03/2mTPOnHnmDDRnonnrL0o1ZorsM5dtcBaaf656bVl76cb694z9kn37UtMMUbpxjlm+kRg0OAwssWgTIh2LMHUaJEQ6nnELLNLbthGNGKH/pIcPJ9q61VWknQZkL8Xgko79NbWdaqBlWYeUVxZdmfzzU5rqR6TtY7OKuDXra+1fpUhL0fbSl7yx0ev56b84wutRu0hjZcPwgomWvRFwEuk68R8ys3yD538upbpas3zj7Jmp8g2RhR423F/2ebNYJIXl2chAi5sHW1PDmy6nrBOrDo4Xqw9WfLDBzD7L0o2kKepNZ81sL92YONnbyRX4XhDpeAYYIh3PuAUW6c/FaqlXXaX/pI8+mujxx11FOtt/veWkB9yAPSNtn1mMhVuWd/iRR6/72ks7Ljn/DKOURP7erVxDyi//3frYSXSz/Z0z71zi4qUviLTGyx0irRE2unIkYBVpzjhz6cZSMfMGZ6J5699fZJ/F1HXmDBwJqqz0B5JXGZx7+CD99XAdNYkbCXnrWVpKl3btQVd170mTKqupdN8XHUs3Ust0t57ApRvnUuPMWYZEU7m5MiE2kwBEOp5XAkQ6nnELLNIRO12v8upWI+026weXgKyYd79xtk4zfDhh8DoW67HyGM4M84xnXPfsJUucTZS9/t1LXxBpjRd9nOeLdsOE0g6NF5CCrlikV71WSc/OTxhZaK6F5m3iJCHPqanrJp/kv3xjcf1hIdCHaIXIQPNWLubDO11MVcfyfKEo3agqKRVZ51faSzfeX2fsx/M9dyjdOGaQgrMszCYg0vGMK0Q6nnErJpG2z9JhncXDXtYho2lNDLrN2sHH7t6zz/esHdaaaLt8e6lblllkHqO1RITP8821G9NZZntyM5e+mEuQDwrxfXaYI9de2sGQrfNHxx0gjx8iHY8o8mwbLM6vLOXFU0p5KmYj4ctZ53PPM+d+HjDQX/nGVjHv8xJR9/ySmLbujZRAjxEzbZzfpTudJ0o3ThUiXbHh/XTZBpdwUCpL3XT2Oe2lGxMmxQNinkcJkc5zAAJ2D5EOCC4ChwW62TAC47YOIds80iy6C5ascp1HeuVb6zuVenD7dvl26seatfYjmizLm7ftSp+GvV4620wa9vpt2RCXiPC5yr/LmwP573zTYJBZO9xKP4IsCBOxS8fTcLSLdKZJyXnEWCLcU9ywkw8CPN8zz/vM8z/zPNC88T0p58xqNRZPmfklc+YMP9vbYgEUFuglYvaNza3mzYOni9rn8/mra3caeeCAUbpRnZrzuXTvHmOf1rHjRNkG3zSYKt0oM2cDweaNAETaG6eo7QWRjlpEvI+nEETa+9liTxDwT0C7SPsfYvSPQEY6ejHilQZ5xUFeupvnf963zyzfmHZ6ki64MEmXXlpKA4c0+Ro4L5zyksg6mwJ9mA6KmwKrRbkGZ55Zns8TEt3/NcuCKRvWG+0n+/U3F0uRs24cfYyvfrFzOwGIdDyvBoh0POPGo4ZIxzd2GLkeAtpF2u1mQ/73wlPPLUsX7us5fTW9QKTVcFTRyratZvkGf6141cw+9+gpbh7k0o3U/M/9+5ZS9y4VtL/Wm0jvSbQKeT5iZJ9faTxitDlE1ITI8o2zy6uoeski6va7/6Sq119LnwZnn+uv/DbVf+MqSg4YqOL0ir4NiHQ8LwGIdDzjBpGOb9wwcn0EIiPSfuZh1IfHW08QaW+cwtxr1UpRvmEsnlJGmzeZ2ecTxvLMG2bt89Rp7TcPZptHWo6TZ9/gzDPXP7/XLBYYENvkqmpRvtHNkOjxDQ3U5fHHqPtD/0lln243/p7s1YsahDizQLdMnhLmKRdl2xDpeIYdIh3PuEGk4xs3jFwfgciINJYI1xf0Qunp4AGRfeap61LzP9ebk2XQl2aZNw/y9HVDj+1882A2keZ5n1mgOQu9W2SjeZvF8tyNyze60ZA3V1H14oXi6wUq37LZ+LuxXPcFX6bGC79MrSNGFQriyJ0HRDpyIfE0IIi0J0yR3AmlHZEMCwYVIQJaRNo+sbjb+cd1fXZkpPVe0UdEdcXvHy6nP/6hPD11XVUV0YVfTtB1N7TSlFMyT13nuCCLqHdeIso2DIEWJRzN1Eb9xEqDRu2zmLruAlEL3SUlz9UvLqSSulpq69qNGlPyzN/buvfQC6IIe4NIxzPoEOl4xg0Z6fjGDSPXR0CLSFtPBwuy6AtuIfb04cZSuvn6CuLvvB0zqI2u/k4rXXW1mLpugLep66wivVXMuMGZ55dEOvuNJjOlfYJYgeW86u5CorvRqZ/vMTLPLM88BzRviWEjjMwzyzNPYYdNHwGItD7WKnuCSKukqbctZKT18kZv8SOgXaTjhyj7iJGRzs5IxR6PzS2n//2vFcQZ6eEj2ugnP2uhC0QW2u/ifyzS69ua6ekvDhqzcGwStdC8nclT14nsM2egx7z7jinPL75gLOHNW/Opp6Uy0F8lXoEQm34CEGn9zFX0CJFWQTE/bUCk88MdvcaHAERaQawg0gogZmiCl/H+/cNlxCLN2zXXtRpfo0Z7y0DLpuX0dS83HqYXxQ2ENWJFlq6iZMOQZ5F95jmg+764yBBozkLzMt4k5nk2yjeMEo6vGqsQYssfAYh0/tjn0jNEOhd6+T0WIp1f/ug9+gTyItLWFXnsiLAgS/QvGp0jXPh8mVEPzbNysDhLifYzBhbo+fV19Lvag8QzcfBWXVpC3+jak67r0ZuOr6kRmWdTnnkaO94SYq5no3Tjoq9S46wL/HSHfUMkAJEOEW6ITUOkQ4QbctMQ6ZABo/nYE9Au0rzsZb++PenR+26LPTx5AshIqw/l4cPmDYX8tefzErrgooQh0WfNyHwjoX0ki8XNg786tJ82t5irDx5TVk7X9e5NNw84ikrfXJuuf654Z43x9xaxVHcjy7OQ6JZJJ6k/MbSYEwGIdE748nYwRDpv6HPuGCKdM0I0UOAEtIs0bjYs8CtKwem99y6XcpTT00+UUZcu7aUcgwZ7L+VYKm4g/D8H96cz0MPLK+kfe/amy7r1pN4rXqFuL4nM84IFVLZrpzHipnPPM0o3WKATgwYrOAs0EQYBiHQYVMNvEyIdPuOweoBIh0UW7RYKAYi0gkgiI60AYqqJZ/5ilnKs/VspnTghaWShr/xWwnMHL4gMNJdx8HfeJldW0aWihONrLa00bOmLRglHF1HCQWIN8WSfPml55jmg2yoqPPeDHfNDACKdH+659gqRzpVg/o6HSOePPXqOBwHtIs2lHbPOOpluufaySBFav3ELXXnT3fTEA3fRhLEj02NzmwPbWssNkc49lPv2laRKOcro0MESuvRrZinHqad5K+Xg2TfmH66lBQ2HKSFqoseKKewu6dKDrvzsMxq5dIlRwlG5epUx0MTxJxBdcgkdmHkBNZ92eu6DRwvaCECktaFW2hFEWilOrY1BpLXiRmcxJKBdpFlMf/Pgk7Ri3v2RwWW9+dFJpLONFyKdWyjfXG2Wcjw3r4z69OUbCoVEX9tKfftlL+XgVQjnH6mjBSID3dCWpFEVQqC79qDvvPcejRIZaF6B0L76YPKrX6Uu40+g/bXmjYfY4kMAIh2fWFlHCpGOZ9x41BDp+MYOI9dDQLtIc410pi1fs3ZkykhDpMO7GP/8GN9QWEYfbCilU6aapRyzL8teyvFGU0NKoOvokFiVcIiYTPrrpZV0zcrXaMzSl4wp7DqtPnjhV6hNLPOdbYnw8M4WLedKACKdK8H8HA+Rzg93Fb1CpFVQRBuFTEC7SEcVpp/SDrvsIyPtP6o7d8hSjnJqEonhK75plnJMmJi5lGNtc2NaoPcmxGqGYp7n2VVd6Obnnqdxj/6Oyjd+YAymraqa6q/6Nh254WZqHXN8hwFCpP3HKypHQKSjEgl/44BI++MVpb0h0lGKBsYSRQIQ6VRU3ETaHrTv3vpr2l9TS/Pn3pP+08HD5tRq2LwReOXlUvrv35XS4kWlxDNxfO+GJF1/Q4K6dnU/fl1TIz1TW0vPiDKOHS0t1FsI9N916Uq3LF5EE/7vfVS65RPj4OTgwdR00y3UPOcaauvV27HB8rJSqq4so8MNLd4GjL0iQ6B390rC8y0y4fA8kO5dKqixOUGtCW/3PHhuGDuGToCfc9hAAATcCeRFpPmGw83bdhmjuuf262j2hdOJSz5OmzI2b/NLexVpuZ81K13flL0UARehyBKLkucHHyih3z1QSps2Ec08p41u+n4bffVi91roD0W6+unaQ/TXQ7W0qbmJuoiFVK4Q5Rn/sHgxTRYCXfLJZgNt26jR1HL7HdR61bco25rhwqOJZbqpBW/qcbsuu1aVEZ5vcYsaGeVULNHw6PjFjp9z2EAABCIk0tYFWfgmvx/deIUh0vc/8gw99dyyvN2E6FWk5SwemLXD39Nq8yazlGPuI+Yy33PEzYRcyjF6jLNEb0+0GLNwzBezcHwopqoT7kvfam6l77/yMp208AWqWvmq0U7T2edQ46WXUcOlf0dJsdCKlw2lHV4oRXMflHZEMy7ZRoXSjmyEovt3lHZENzYYWTQIaM9Ic+ZZzoxhFWknQdWJyE2keYzWGUacVmZEjXTmSL24yJwbesWrpTRyVPsy3yUlnY/7LNGaroF+T2Sgebu8NUE/eOUVmsoC/doyU6Cnz6DG2X9HDZdcRsm+fX1dKhBpX7gitTNEOlLh8DwYiLRnVJHbESIduZBgQBEjoF2kWUz/61c/NOZqjkpG2jr9Hcenb+8eaXm2lqHw35zKTyDSzld1Q0P7Mt+7d5XQeReYNxTOOKdzScX+ZCI9jd3bYkYO3i5OtNE/igz0mYteoOrlr5gCfebZ7Rnofv0CPZ0g0oGwReIgiHQkwuB7EBBp38gicwBEOjKhwEAiSkC7SN/xy4do5VvrDVGVIj1q2CBjMZRLzj+DfvWT6yOKyn1YEOnObN5fb84N/cSfyqiqqn2Z7yFDO5Zy1Imp63gRFZ4L+nUxJzRv5wnP/pHIQE8XAt1t2VLjd82nT6cGzkCLMo5k/6NyukYg0jnhy+vBEOm84g/cOUQ6MLq8HwiRznsIMICIE9Au0szDabXAG6++JHKrHXqNHUS6I6n5z5qlHG+/WUrjxvPc0An65tWtHXZqpjZaIOSZl/N+pcEU6LOFY/942TKaIWbi6CEWUzEEetoZRv2zIdADBnoNScb9INJKMOalEYh0XrDn3ClEOmeEeWsAIp039Og4JgTyItIxYeN5mBBpE9WBGr6hUEi0uKGwZn8JXTzbLOU4bVrHUg5ehXD+kVpa3HDEOG5qWwnd9uoyOnfRIur10mJToMXS3Vz/zHXQiYFHe46Flx0h0l4oRXMfiHQ045JtVBDpbISi+3eIdHRjg5FFg4B2keZ5mN9cu5Hsi5rke/q7XMIBkSb621tmKce8Z8qoV+/UMt9Covv3by/lYHHmDDRnonk7saSUfrp8OZ0vlvHu8+IiU6BPPc3IQPNMHIljBuUSFtdjIdKhYNXSKERaC2blnUCklSPV1iBEWhtqdBRTAtpFmuuiL7/4nE5lHPme/i6X+BW7SD/5Z7OUY/26UppyirnM92Vfb59bm0s3pEBzSceY0jK669XldKHIQPdf/IIp0KdMpUaRgeY66MSgwbmEI+uxEOmsiCK7A0Q6sqHJODCIdDzjxqOGSMc3dhi5HgLaRZozz3IRFusp5nv6u1xwF6tIf7a7fZnvelHmfPlVZinHxElmKcfrTUKgD4sMtMhE14lZOYaWldPPRQb6K0tepIEvLDAFesop6WnsEkOG5hIGz8dCpD2jityOEOnIhcTTgCDSnjBFcieIdCTDgkFFiIB2kUZGOkLRz2EoK18zSzkWLyyjo49pnxu6WzeiWjETx321NfT7uoPUKpYzLBcTRv/7ypX0nZdeot4LnjV6bZk8xZyFQ2ShE8cOy2Ek/g+FSPtnFpUjINJRiYS/cUCk/fGK0t4Q6ShFA2OJIgHtIs0lHA8+tiC9KAtDkYuhxHXmjmLLSP/h0XJDojd9XEJnnmWWclz0FbOU4891tfRvtftobyJhCPS9r68SAr2E+rNAC6lumXSSMQMH10Enhg3Py3MCIp0X7Eo6hUgrwai9EYi0duTKOoRIK0OJhgqUgHaRZo5O0985lXvEhXmxiPTWLe2lHCLpTH9/jbnM93HHt9ELYiaOv4iZOJakZuL45Rtv0FVCoIc/L0o4WlupZcIkIwPNNxG2Dh+Z19BCpPOKP6fOIdI54cvbwRDpvKHPuWOIdM4I0UCBE8iLSBca02IQ6aVL+IbCMlr+ShkNH9FeyrEu0UhPi1k4nj5cS/VtSfrRqlX03ZdfprGiBrqkuZlaTpxoZKB5GrvWEaMiEXqIdCTCEGgQEOlA2PJ+EEQ67yEIPACIdGB0OLBICECkFQS6kEVauLBRxsFfOz4toXPP4xsKE3TCzCYh0LUiC11Hn7Q005zXX6ebxWqEUxY+T6VNjdQy/sT0LByto8YooKyuCYi0Opa6W4JI6yaupj+ItBqO+WgFIp0P6ugzTgTyItJ8w2HNQXMuYftmn186DjALVaQ3buAbCsvoT4+VU0Wlucz3nGtb6a3+h4wsNC/pffzOHfT4b39LJy172QhVslcvOnLDD4wvfhzFDSIdxah4GxNE2hunqO0FkY5aRLyPByLtnRX2LE4C2kX60jl3Ur++PenR+24rGOKFKNLPzzfnhl79RimdMM5c5nvY5WYGmmuhu4v57n73h7l0xf/MpbKmplgItLzgINLxfepBpOMZO4h0POPGo4ZIxzd2GLkeAtpF2m0eaT2nG04vhSTStYdSy3wLif7iixL6yiUJOu/Getp8HGeha6m2/gj9y6KFdO3zz9HQtWuorVt3qr/im9Rwxbeo+eRTwwGsuFWItGKgGpuDSGuErbAriLRCmJqbgkhrBo7uYkcAIq0gZIUi0u+sMeeG/uvTZdSzVxt966Zm6vWtGlpcUkfvNjfSN15fSf+ycCGdsshcjbDxwq9Q/ZXfpsavXqqAor4mINL6WKvuCSKtmqie9iDSejiH0QtEOgyqaLOQCGgXaS7tmHXWyZ2WCI8z1EIQ6b88aZZyvPtOKZ10cpJO/vEB2jnpIC0W09lN+vgj+vnixXTR/HlUdaDGmAu6XmSgOQsd1TroTNcTRDq+zzaIdDxjB5GOZ9x41BDp+MYOI9dDQLtI8xzSv3nwSVox7349Z6ihlziL9N497XND14n7P7/0T4ep6zdqaHnXWqo6WEM/EQL97QULaMDGDZQ8aoAh0JyFbj1hrAay4XQBkQ6Hq45WIdI6KKvvAyKtnqmuFiHSukijn7gS0C7SXCOdacOsHfoupTdeN0s5XniujPqPa6bxt++nHRMP0ZZkM10v5oL+B1ELPf6VpcaAGv7uCkOim740S98AQ+oJIh0SWA3NQqQ1QA6hC4h0CFA1NQmR1gQa3cSWgHaRji2pDAOPY0b6j3/guaHL6MONpTT6nw5Q+df204c96umMde/Rz198kb707F+prLGRmk+fnr6ZsK2ioiDCB5GObxgh0vGMHUQ6nnHjUUOk4xs7jFwPAYi0As5xEunt29tLOVpPOkwj/7GGto47REM+/4x+Jso4vvHcAuq95RNKDBshSjhEGYfIQieOHaaAUnSagEhHJxZ+RwKR9kssGvtDpKMRhyCjgEgHoYZjiolAXkSa66TvvPfhDpzvuf06mn3h9Fiyj4tIv7LUXOb7lWWl1OfmL+jQd/ZQsqSNbnzhOfrnhYto1BuvU1tllbiJ8JuGQDdPOyOW8cg2aIh0NkLR/TtEOrqxyTQyiHQ844aMdHzjhpHrI6BdpO9/5Bl68LEF9MQDd9GEsSONM12/cQtdedPddOPVl8RyNo+oi3Rra/sy39urGqnHv+2kuiENdN7bb9NPFy2is+f91YhD06zzhUB/mxq+9nV9V2AeeoJI5wG6oi4h0opAam4GIq0ZuMLukJFWCBNNFSQB7SLNy4NffvE5nYSZBfup55bFcjaPKIv0Rx+ay3w/trCNSr9eQ9XfrKEhX2ymf128iC5dMJ+6fbabWsafaExlx1noZL/+BXmhW08KIh3fEEOk4xk7iHQ844aMdHzjhpHrI6BdpN1WNpTlHpi1Q13wFz5vzg29qqKOuv39fmo7fh/d/MILdPPC52nYO2sp2adPWqBbJkxS13HEW4JIRzxAGYYHkY5n7CDS8YwbRDq+ccPI9RHQLtLISIcf3MOHzVKOR15I0hfTD1DlFTV0/ppX6F+ERJ+1ZLExgIZLLzMkuvH8i8IfUMR6gEhHLCA+hgOR9gErQrtCpCMUDJ9DQWmHT2DYvegIaBdp1EiHe429924pzX2knJ7aX0dlYmGVCd3X0E3PP0/ffmEBdT14kJpPPS2Vhf4mtXXpGu5gIto6RDqigfEwLIi0B0gR3AUiHcGgeBwSRNojKOxWtAS0izSTxqwd4Vxvz/yljB58IUEbRh+ggedtoW8tnU8/WPgCjfhwIyUGDzFWJOQZOVpHjg5nADFpFSIdk0A5DBMiHc/YQaTjGTceNUQ6vrHDyPUQyItI6zk1fb3k+2bD/fvNuaF/t72W6i84QJfve5a+99zzNGvlq0SlpcZNhCzQTdNn6IMS4Z4g0hEOTpahQaTjGTuIdDzjBpGOb9wwcn0EtIv0d2/9Nb25diPZbyrkmxBPmzKWHr3vNn1nr6infIr0m6tL6T+eS9DyXgfozDHL6OrF8+kaUcpR2dRITTO+ZK5KePk3FZ1pYTQDkY5vHCHS8YwdRDqecYNIxzduGLk+AtpFGjcbqgvu438so/s21VH56A3095ueomtEFnrkju3UfNzx1GhkocWqhEcfo67DAmkJIh3fQEKk4xk7iHQ84waRjm/cMHJYhuOrAAATbElEQVR9BLSLNKa/yz24u3aW0P+Z10rPJg/SRX3n0W9/8280esenRsP1V11NtT+7m5IDBubeUYG2AJGOb2Ah0vGMHUQ6nnGDSMc3bhi5PgLaRRoZ6dyCu+zVErpnXR19NvRT+u8n7qCvL33JaLBp8hSqu/c+aj5lam4dFMHREOn4BhkiHc/YQaTjGTeIdHzjhpHrI6BdpDH9XfDg/q+/tNDj9YdoRtl8euCXv6Ahe/ZQsqqK6n72v+nIjT8I3nCRHQmRjm/AIdLxjB1EOp5xg0jHN24YuT4C2kWaTw3T3/kL8IbNbfSztw7ToeRauvGtP9KNf/kLVTU3Uf1XLqGGOddR0zmz/DVY5HtDpON7AUCk4xk7iHQ84waRjm/cMHJ9BPIi0vpOT09PYc7a8R8rmuj3+w/RuXufoBv++heaseZv1DTwaGoWAn3kmu9Rsv9Rek6ygHqBSMc3mBDpeMYOIh3PuEGk4xs3jFwfAYi0AtZhiHRjI9FNrxyiT7q8S9c//5Qh0b0O11HjrAuoXgh04wVfVjDy4mwCIh3fuEOk4xk7iHQ84waRjm/cMHJ9BCDSClirFulVG9roh3v30tTtz4oyjqfpvNVvUEvvvtR0jchCi0w0r1KILTgBiHRwdvk+EiKd7wgE6x8iHYxbFI7CyoZRiALGEGUCEGkF0VEp0ve91ER/LX2Xrn3pcbpBSPRRBw9Q09nnUP13rqWGSy9TMFo0AZGO7zUAkY5n7CDS8YwbMtLxjRtGro8ARFoBaxUiva0mST9efYj67ZxP1y96gr664jVq7tKNmkUWul58tY4YpWCkaIIJQKTjex1ApOMZO4h0POMGkY5v3DByfQQg0gpY5yrSf3q3if788Vb66vuP0A1P/4WGfLGHak8+nRLXXUcN37hKwQjRhJUARDq+1wNEOp6xg0jHM24Q6fjGDSPXRwAirYB1LiL9z68cproNC2nOyj/S3728lBJlFdR4zbV05DsiCz12nILRoQk7AYh0fK8JiHQ8YweRjmfcINLxjRtGro8ARFoB6yAi/d7uBN27ahdNW/8Q3TDvKRq5ayftHTuFKm8QpRzfnqNgVGjCjQBEOr7XBkQ6nrGDSMczbhDp+MYNI9dHACKtgLVfkf7d3xpp3coldPnf/kBXLV5kjODAN6+h1muvo5ZJJykYEZrIRAAiHd/rAyIdz9hBpOMZN4h0fOOGkesjAJFWwNqPSP/Twn00dMXv6Lqlj9PYrVto9/Dx1O373xOlHNcSlZUpGA2ayEYAIp2NUHT/DpGObmwyjQwiHc+4QaTjGzeMXB8BiLQC1l5EeuXWVpr/3DI6751Hac5z841et3z5Sur5g+upeeo0BaNAE14JQKS9korefhDp6MXEy4gg0l4oRXMfzCMdzbhgVNEhAJFWEItsIn3fqgai+f9FV6/4I036+CPadcwoIwvdIBZXaevSVcEI0IQfAhBpP7SitS9EOlrx8DoaiLRXUtHbDyIdvZhgRNEiAJFWEA83ka5vbqPfPrqKTlr133TdwqeMntad/TUafOv11DR9hoKe0UQQAhDpINSicQxEOhpx8DsKiLRfYtHZHyIdnVhgJNEkAJFWEBcnkV70UQt98vuHaPbqP9DU99+nz/oPoYPfuo763HI9JXv3VtArmghKACIdlFz+j4NI5z8GQUYAkQ5CLRrHQKSjEQeMIroEINIKYmMX6Yf/tJYGLnqIrnn5capsaaG/nXIhjfjxTdR07nkKekMTuRKASOdKMH/HQ6Tzxz6XniHSudDL77EQ6fzyR+/RJwCRTsVo/cYtdOVNd9MTD9xFE8aO7BC5S+fcSZu37TJ+N3r4YJo/954Of5civftQkhb/21ya8frv6az1a+iLXkfRh5deS2Nuv4GSAwZG/2ookhFCpOMbaIh0PGMHkY5n3HjUEOn4xg4j10MAIi04nzX7Fqo5WGcQt4v0d2/9Ne2vqU3LM0t1v7496dH7bktHiEV6yeKN1PKnB+mqV/9E3evrafXEc6jnDTdQ7ysu0RNJ9OKZAETaM6rI7QiRjlxIPA0IIu0JUyR3gkhHMiwYVIQIQKRTwXDLSLNk/+jGK2j2hdONPectXkm/efBJWjHv/nQY77/1EZrw8qM0c90qOtitF606/zt08l3fp8TQYyMUagxFEoBIx/dagEjHM3YQ6XjGjUcNkY5v7DByPQQg0hlE2kmu7b/7n9n/RF9Z/gfqd+ggvTHudKq74no68eYr9EQPvQQiAJEOhC0SB0GkIxEG34OASPtGFpkDINKRCQUGElECEOkcRZpKSowWnr/guzTzf/6d2rp3j2ioMSxJoKyshCrLy6ihqRVQYkagR9cKqqtvidmoMdwuVeXU3JqgRKINMGJGgJ9z2EAABNwJQKRzFOnHL76ZBpxzDk298VJcZzEhAJGOSaAchgmRjmfsINLxjBuPGiId39hh5HoIQKQziDT/yalG+s57H6YNy+emI5RtZUM9oUQvXgmgtMMrqejth9KO6MXEy4hQ2uGFUjT3QWlHNOOCUUWHAEQ6i0h7nbUjOiHFSLIRgEhnIxTdv0OkoxubTCODSMczbjxqiHR8Y4eR6yEAkU5lneX0d4y9b+8eHWbl8DqPtJ6QoZdcCUCkcyWYv+Mh0vljn0vPEOlc6OX3WIh0fvmj9+gTgEgriBFKOxRA1NgERFojbMVdQaQVA9XUHERaE+gQuoFIhwAVTRYUAYi0gnBCpBVA1NgERFojbMVdQaQVA9XUHERaE+gQuoFIhwAVTRYUAYi0gnBCpBVA1NgERFojbMVdQaQVA9XUHERaE+gQuoFIhwAVTRYUAYi0gnBCpBVA1NgERFojbMVdQaQVA9XUHERaE+gQuoFIhwAVTRYUAYi0gnBCpBVA1NgERFojbMVdQaQVA9XUHERaE+gQuoFIhwAVTRYUAYh0QYUTJwMCIAACIAACIAACIKCLAERaF2n0AwIgAAIgAAIgAAIgUFAEINIFFU6cDAiAAAiAAAiAAAiAgC4CEGldpNEPCIAACIAACIAACIBAQRGASAcMZ7bVDgM2i8MUEQgSn/Ubt9CVN91NTzxwF00YO1LRSNCMXwJ+YvfdW39Nb67d2KGLDcvn+u0S+ysg4Cdud/zyIVqwZBXipoB7rk34iZu1LxlDvF7mGgEcH3cCEOkAEeQ37/01tTR/7j3G0fxC1K9vT3r0vtsCtIZDVBMIEp+zZt9Ccpl4vDGojoj39vzGjuO2Yt796Q74zX3lW+s7/M5779gzKAG/cePXzF/cdm36A+v9jzxDTz23DHELGoCAx/mNm+xm3uKV9PsnFtHmbbuQeAjIHocVDgGIdIBY8pv3j268gmZfON04ml9UfvPgk3gTCMAyjEOCxgcZ6TCi4a/NoLGTvSCG/nir2htxU0VSbztB4zZ+5hxDoPEfPL3xQm/RJACR9hkXpzdqvHn7hBji7rnEB3EMMTAems4ldrJ5ZDY9gFa8i4q4cWZ005adSEYojk2m5oLGjf+bcM2VF9GoYYMg0hrjha6iSwAi7TM2QV98fHaD3QMSyCU+EOmA0BUdlkvseAjy+Htuvy793yJFQ0MzGQjkEjdrSRVq2/VeZkHixqVTe/YdMMoY8XqpN17oLboEINI+YxPkxcdnF9g9BwK5xAdvDDmAV3CoitjdePUldMu1lykYDZrwSiCXuFn/k/DgYwsIMu2Veu77+Y2bvYQRr5e5xwAtFAYBiHSAODrVld1578N4EwjAMoxDgsYHbwxhRMNfm0Fix2/w/PzDTaL+WKvcO0jc7P3LulvMmKMyMpnb8hM3+TxzahEfYPXFDD1FjwBEOkBMgt7pHKArHBKAQLb4cI0fb3LWFdkFRDoAbMWH+I0dbvRVHICAzfmNG2ZbCQha8WF+42btHq+XioOB5mJLACIdMHRB594M2B0O80kgU3ycRNpaq8ld9e3dAzc++WSuanevsZNv5E79ok5aVTS8t+M1btyidV/ZA8o6vLNWuaefuEGkVZJHW4VCACJdKJHEeYAACIAACIAACIAACGglAJHWihudgQAIgAAIgAAIgAAIFAoBiHShRBLnAQIgAAIgAAIgAAIgoJUARForbnQGAiAAAiAAAiAAAiBQKAQg0oUSSZwHCIAACIAACIAACICAVgIQaa240RkIgAAIgAAIgAAIgEChEIBIF0okcR4gAAIgAAIgAAIgAAJaCUCkteJGZyAAAiAAAiAAAiAAAoVCACJdKJHEeYAACIAACIAACIAACGglAJHWihudgQAIgAAIgAAIgAAIFAoBiHShRBLnAQIgAAIgAAIgAAIgoJUARForbnQGAiAAAiAAAiAAAiBQKAQg0oUSSZwHCIAACIAACIAACICAVgIQaa240RkIgAAIgAAIgAAIgEChEIBIF0okcR4gAAIgAAIgAAIgAAJaCUCkteJGZyAAAiAAAiAAAiAAAoVCACJdKJHEeYAACIAACIAACIAACGglAJHWihudgQAIgAAIgAAIgAAIFAoBiHShRBLnAQIgAAIgAAIgAAIgoJUARForbnQGAtEgcP8jz9CDjy3oNJgbr76Ebrn2Mjpr9i3G31bMu7/TPvy3vr170vy59xh/y9bW+JlzMp503949jH6+e+uv6c21Gx33vef262j2hdPp0jl30uZtu0j+LHeet3gl3XnvwzR6+OD0uOwNeRnH9KkTaMGSVelDLzn/DPrVT6731a+X84jGVYBRgAAIgAAI5EoAIp0rQRwPAjEjIEXviQfuogljR6ZHz0K8dMWatIiyeJ42ZSw9et9t6X3u+OVDtPKt9WnB9tqWXXjtIsx/57b219S6ijDvI0XaPi75+0wibQ2TFG+ncTj9zU+/Xs4jZpcMhgsCIAACIOBCACKNSwMEiowAC7LMtGY6dbtQrt+4ha686e4O2WCvbakU6X59exqZa/lBQI6L5TqbiHsZh5tIe+0XIl1kTyicLgiAQFETgEgXdfhx8sVIgEszxowc0iHT7MaBpXDTlp1GBpqzsiyT1gy1n7a4j0yZYC8CymMYd9ww2rPvAA3s38cou+AsOW/8uzBF2mu/Xs6jGK87nDMIgAAIFCIBiHQhRhXnBAIZCEiZlbvIGmW3Q6y1xRuWz+2wm9+2som0lxppFtrTpowzaqJ5PDw+zk7/9r+fDl2kvfSLGmk8/UAABECgeAhApIsn1jhTEOhEQJZFyD84lXxI+ZU3Irph9NNWLjXSLNLyBkAei8yS+8kEB6mR9tqvn3HgkgQBEAABEIg3AYh0vOOH0YOAMgJcIsEzVtizzk610dk6dWsrW0Y6W2mGLO1gkZazhUgp9yOwuYh0tn79jCMbR/wdBEAABEAg2gQg0tGOD0YHAkoJsBT/+dmlRkbXvklBtM/m4SbSQdpSKdI8fq7RllP0+RHYXEQ6W79+xqE0uGgMBEAABEBAOwGItHbk6BAE8kfAWn5hzTxbZ76w3kzII80k0jyLB29e21It0laSfgQ2V5HO1K+fceTvSkDPIAACIAACKghApFVQRBsgEDMCTouTuNVAZyvt8NNWNpH2erOhU0bdj8C6jUOWpMhwWhdkkTXS9lDb+8XNhjF7MmC4IAACIJADAYh0DvBwKAiAAAiAAAiAAAiAQPESgEgXb+xx5iAAAiAAAiAAAiAAAjkQgEjnAA+HggAIgAAIgAAIgAAIFC8BiHTxxh5nDgIgAAIgAAIgAAIgkAMBiHQO8HAoCIAACIAACIAACIBA8RKASBdv7HHmIAACIAACIAACIAACORCASOcAD4eCAAiAAAiAAAiAAAgULwGIdPHGHmcOAiAAAiAAAiAAAiCQAwGIdA7wcCgIgAAIgAAIgAAIgEDxEoBIF2/sceYgAAIgAAIgAAIgAAI5EIBI5wAPh4IACIAACIAACIAACBQvAYh08cYeZw4CIAACIAACIAACIJADAYh0DvBwKAiAAAiAAAiAAAiAQPESgEgXb+xx5iAAAiAAAiAAAiAAAjkQgEjnAA+HggAIgAAIgAAIgAAIFC8BiHTxxh5nDgIgAAIgAAIgAAIgkAMBiHQO8HAoCIAACIAACIAACIBA8RKASBdv7HHmIAACIAACIAACIAACORCASOcAD4eCAAiAAAiAAAiAAAgULwGIdPHGHmcOAiAAAiAAAiAAAiCQAwGIdA7wcCgIgAAIgAAIgAAIgEDxEoBIF2/sceYgAAIgAAIgAAIgAAI5EIBI5wAPh4IACIAACIAACIAACBQvAYh08cYeZw4CIAACIAACIAACIJADAYh0DvBwKAiAAAiAAAiAAAiAQPESgEgXb+xx5iAAAiAAAiAAAiAAAjkQgEjnAA+HggAIgAAIgAAIgAAIFC8BiHTxxh5nDgIgAAIgAAIgAAIgkAMBiHQO8HAoCIAACIAACIAACIBA8RKASBdv7HHmIAACIAACIAACIAACORCASOcAD4eCAAiAAAiAAAiAAAgULwGIdPHGHmcOAiAAAiAAAiAAAiCQAwGIdA7wcCgIgAAIgAAIgAAIgEDxEoBIF2/sceYgAAIgAAIgAAIgAAI5EIBI5wAPh4IACIAACIAACIAACBQvAYh08cYeZw4CIAACIAACIAACIJADAYh0DvBwKAiAAAiAAAiAAAiAQPESgEgXb+xx5iAAAiAAAiAAAiAAAjkQ+P+u+mNMPdyMRAAAAABJRU5ErkJggg==", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "PlotlyHelper.combine_plots(fig_list=[fig_fixed, fig_variable, fig_exact],\n", " curve_labels = [\"FIXED time steps\", \"VARIABLE time steps\", \"EXACT solution\"],\n", " xrange=[0, 0.4], ylabel=\"concentration [A]\",\n", " title=\"Fixed vs. Variable time steps vs. Exact soln, for [A] in reaction `A<->B`\",\n", " legend_title=\"Simulation run\")" ] }, { "cell_type": "markdown", "id": "a4399ddd-d4c7-4342-ab47-55f04d77b755", "metadata": {}, "source": [ "### With fewer grid points, the advantage of adaptive variable timesteps is more pronounced \n", "If you zoom out the plot, and scroll to later times, you can see that the advantage later disappears when there's \"less happening\" (change-wise), closer to equilibrium" ] }, { "cell_type": "code", "execution_count": null, "id": "d53d0255-2d5d-4d9b-8830-1f94b841f68c", "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.9.13" } }, "nbformat": 4, "nbformat_minor": 5 }