{ "cells": [ { "cell_type": "markdown", "id": "49bcb5b0-f19d-4b96-a5f1-e0ae30f66d8f", "metadata": {}, "source": [ "## Tour of Life123's process of automatic detection - and stepsize reduction - in case any concentration goes negative\n", "### Case study of two coupled reactions: `2 S <-> U` and `S <-> X` (both mostly forward)\n", "\n", "1st-order kinetics throughout. \n", "\n", "LAST REVISED: Feb. 11, 2023\n", "\n", "* [RUN 1 : negative concentrations are detected but otherwise ignored](#negative_concentrations_1_run_1) \n", "(_\"DEMONIC\"_ in figure below)\n", "\n", "* [RUN 2 : we restored some, but not all, of the code that had been disabled in Run #1](#negative_concentrations_1_run_2) \n", "Negative concentrations from *individual* reactions are now automatically corrected - but negative concentrations from *combined* (synergistic) reactions can still slip thru \n", "(_\"POSSESSED\"_ in figure below)\n", "\n", "* [RUN 3 : we restored ALL the code that had been disabled in the earlier runs](#negative_concentrations_1_run_3) \n", "Negative concentrations from *individual* reactions are now automatically corrected - and so are negative concentrations from *combined* (synergistic) reactions \n", "(_\"DISTURBED\"_ in figure below)\n", "\n", "* [RUN 4 : same as the previous run, but with slightly finer time resolution](#negative_concentrations_1_run_4) \n", "(_\"HEALING\"_ in figure below)\n", "\n", "For even more accurate solutions - _\"HEALTHY\"_ in figure below - see the experiment `large_time_steps_2`\n" ] }, { "cell_type": "markdown", "id": "6925549c-3198-4a02-92de-710ce1ff9edf", "metadata": {}, "source": [ "![Exorcising Instabilities](../../docs/negative_concentrations_1.png)" ] }, { "cell_type": "markdown", "id": "5ca2c020-f5fb-4882-86d7-2f04948bf43a", "metadata": {}, "source": [ "# IMPORTANT: DO NOT ATTEMPT TO RUN THIS NOTEBOOK! \n", "## This is a **\"frozen run\"** that depends on Life123 code changes for demonstration purposes \n", "(a code change that turned off the automatic correction of time steps that lead to negative concentrations.) \n", "If you bypass the execution exit in the first cell, and run the other cells, you WILL NOT REPLICATE the results below!" ] }, { "cell_type": "code", "execution_count": 1, "id": "3edd830c-6023-454d-98e7-5b2ba544aa80", "metadata": {}, "outputs": [ { "ename": "StopExecution", "evalue": "", "output_type": "error", "traceback": [] } ], "source": [ "# To stop the current and subsequent cells: USED TO PREVENT ACCIDENTAL RUNS OF THIS NOTEBOOK!\n", "\n", "class StopExecution(Exception):\n", " def _render_traceback_(self):\n", " return []\n", "\n", "raise StopExecution # See: https://stackoverflow.com/a/56953105/5478830" ] }, { "cell_type": "markdown", "id": "df711d07-f89b-4972-b64c-da1a141b7fef", "metadata": {}, "source": [ "## The `StopExecution` above is on purpose, TO PREVENT ACCIDENTAL RUNS OF THIS NOTEBOOK!" ] }, { "cell_type": "code", "execution_count": 1, "id": "d9efa3fd-e95d-4e1c-878a-81ae932b2709", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Added 'D:\\Docs\\- MY CODE\\BioSimulations\\life123-Win7' to sys.path\n" ] } ], "source": [ "# Extend the sys.path variable, to contain the project's root directory\n", "import set_path\n", "set_path.add_ancestor_dir_to_syspath(2) # The number of levels to go up \n", " # to reach the project's home, from the folder containing this notebook" ] }, { "cell_type": "code", "execution_count": 2, "id": "01bae555-3dcf-42c1-bddc-9477a37f49f8", "metadata": { "tags": [] }, "outputs": [], "source": [ "from experiments.get_notebook_info import get_notebook_basename\n", "\n", "from src.modules.reactions.reaction_data import ReactionData as chem\n", "from src.modules.reactions.reaction_dynamics import ReactionDynamics\n", "\n", "import numpy as np\n", "import plotly.express as px\n", "import plotly.graph_objects as go\n", "from src.modules.visualization.graphic_log import GraphicLog" ] }, { "cell_type": "code", "execution_count": 3, "id": "23c15e66-52e4-495b-aa3d-ecddd8d16942", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of reactions: 2 (at temp. 25 C)\n", "0: 2 S <-> U (kF = 8 / kR = 2 / Delta_G = -3,436.56 / K = 4) | 1st order in all reactants & products\n", "1: S <-> X (kF = 6 / kR = 3 / Delta_G = -1,718.28 / K = 2) | 1st order in all reactants & products\n" ] } ], "source": [ "# Initialize the system\n", "chem_data = chem(names=[\"U\", \"X\", \"S\"])\n", "\n", "# Reaction 2 S <-> U , with 1st-order kinetics for all species (mostly forward)\n", "chem_data.add_reaction(reactants=[(2, \"S\")], products=\"U\",\n", " forward_rate=8., reverse_rate=2.)\n", "\n", "# Reaction S <-> X , with 1st-order kinetics for all species (mostly forward)\n", "chem_data.add_reaction(reactants=\"S\", products=\"X\",\n", " forward_rate=6., reverse_rate=3.)\n", "\n", "chem_data.describe_reactions()" ] }, { "cell_type": "markdown", "id": "a6d597b4-c72c-4965-b276-0f60ad87736e", "metadata": {}, "source": [] }, { "cell_type": "markdown", "id": "bb39a3ec-5b20-45a7-b6b7-c7d834fc208c", "metadata": {}, "source": [ "# RUN 1 : negative concentrations are detected but otherwise ignored\n", "This run required the disabling of multiple software features that detect, and automatically correct, such issues. \n", "It cannot be replicated with current versions of Life123. DO NOT ATTEMPT TO RE-RUN!" ] }, { "cell_type": "code", "execution_count": 5, "id": "f64798a2-1e2b-4984-b3da-b5c9d386ade0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "3 species:\n", " Species 0 (U). Conc: 50.0\n", " Species 1 (X). Conc: 100.0\n", " Species 2 (S). Conc: 0.0\n" ] } ], "source": [ "dynamics = ReactionDynamics(reaction_data=chem_data)\n", "dynamics.set_conc(conc={\"U\": 50., \"X\": 100., \"S\": 0.})\n", "dynamics.describe_state()" ] }, { "cell_type": "code", "execution_count": 6, "id": "f0f74d20-1c57-45dc-bd76-4d1e3c00041f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction 2 S <-> U\n", " [System Time: 0.1 : Baseline value: 50 ; delta conc: -64]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.1\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction 2 S <-> U\n", " [System Time: 0.3 : Baseline value: 80.1 ; delta conc: -112.48]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.3\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction S <-> X\n", " [System Time: 0.4 : Baseline value: -67.99 ; delta conc: 63.927]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction 2 S <-> U\n", " [System Time: 0.5 : Baseline value: 142.9 ; delta conc: -219.85]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.5\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `U` from reaction 2 S <-> U\n", " [System Time: 0.6 : Baseline value: 131.89 ; delta conc: -153.37]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction S <-> X\n", " [System Time: 0.6 : Baseline value: -158.74 ; delta conc: 123.73]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `X` from reaction S <-> X\n", " [System Time: 0.6 : Baseline value: 94.966 ; delta conc: -123.73]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.6\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction 2 S <-> U\n", " [System Time: 0.7 : Baseline value: 271.73 ; delta conc: -443.36]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.7\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `U` from reaction 2 S <-> U\n", " [System Time: 0.8 : Baseline value: 200.2 ; delta conc: -314.68]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction S <-> X\n", " [System Time: 0.8 : Baseline value: -343.3 ; delta conc: 248.85]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "****** DETECTING NEGATIVE CONCENTRATION in chemical `X` from reaction S <-> X\n", " [System Time: 0.8 : Baseline value: 142.9 ; delta conc: -248.85]\n", " IGNORING AND CONTINUING (for demonstration purposes)\n", "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.8\n", "9 total step(s) taken\n", "From time 0 to 0.9, in 9 FULL steps of 0.1\n", "(for a grand total of the equivalent of 9 FULL steps)\n" ] } ], "source": [ "dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n", "\n", "# ************ DO NOT RUN : Life123 automatically catches and corrects these errors;\n", "# this run required a code change for demonstration purposes! \n", "# If you run it, you WILL NOT REPLICATE the results below.\n", "# This is meant to be a \"frozen run\"\n", "dynamics.single_compartment_react(time_step=0.1, stop_time=0.8)\n", "\n", "dynamics.explain_time_advance()" ] }, { "cell_type": "code", "execution_count": 7, "id": "97e67baa-3f77-4d4c-b996-d0867a53c618", "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", "
SYSTEM TIMEUXScaption
00.050.000000100.0000000.000000Initial state
10.140.00000070.00000050.000000
20.272.00000079.000000-23.000000
30.339.20000041.50000080.100000
40.495.44000077.110000-67.990000
50.521.96000013.183000142.897000
60.6131.88560094.966300-158.737500
70.7-21.481520-28.766090271.729130
80.8200.198088142.901215-343.297391
90.9-114.479442-105.947584534.906469
\n", "
" ], "text/plain": [ " SYSTEM TIME U X S caption\n", "0 0.0 50.000000 100.000000 0.000000 Initial state\n", "1 0.1 40.000000 70.000000 50.000000 \n", "2 0.2 72.000000 79.000000 -23.000000 \n", "3 0.3 39.200000 41.500000 80.100000 \n", "4 0.4 95.440000 77.110000 -67.990000 \n", "5 0.5 21.960000 13.183000 142.897000 \n", "6 0.6 131.885600 94.966300 -158.737500 \n", "7 0.7 -21.481520 -28.766090 271.729130 \n", "8 0.8 200.198088 142.901215 -343.297391 \n", "9 0.9 -114.479442 -105.947584 534.906469 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = dynamics.get_history()\n", "df" ] }, { "cell_type": "markdown", "id": "bddd6d35-49dd-4866-9f58-1a7dbd2ea559", "metadata": {}, "source": [ "## Notice how all concentrations dips into negative values various times!" ] }, { "cell_type": "code", "execution_count": 8, "id": "e79f0bc4-dc2b-4676-bdbb-3e8bd21f4053", "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=U
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "U", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "U", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 50, 40, 72, 39.199999999999996, 95.44, 21.95999999999998, 131.8856, -21.481520000000074, 200.19808800000007, -114.47944240000018 ], "yaxis": "y" }, { "hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "X", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "X", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 100, 70, 79, 41.5, 77.11000000000001, 13.182999999999993, 94.96630000000003, -28.766090000000034, 142.9012150000001, -105.94758410000009 ], "yaxis": "y" }, { "hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "S", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "S", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 0, 50, -23, 80.10000000000001, -67.99000000000002, 142.89700000000005, -158.73750000000007, 271.72913000000017, -343.2973910000003, 534.9064689000004 ], "yaxis": "y" }, { "hovertemplate": "x=%{x}
y=%{y}", "legendgroup": "", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "", "orientation": "v", "showlegend": false, "type": "scatter", "x": [ 0, 0.9 ], "xaxis": "x", "y": [ 0, 0 ], "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": "Changes in concentrations; notice the several dips into negative concentrations (red line)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 0.9 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -392.0864943277781, 583.6955722277783 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtcAAAFoCAYAAACc+tdgAAAgAElEQVR4XuydB5wURfbH38RdwpIzSBIkg2DEgzP+EROYUBBQFAVUEMOZPUVOFFRMgKKCogKi4okYwJw4QVREogFhQXJYYAmbd//1araX3qFnpnumpqdn9ld+xll2u6uqf6+6+9uvX71ylYhCKFAACkABKAAFoAAUgAJQAArErIALcB2zhqgACkABKAAFoAAUgAJQAApIBQDXGAhQAApAASgABaAAFIACUECRAoBrRUKiGigABaAAFIACUAAKQAEoALjGGIACUAAKQAEoAAWgABSAAooUAFwrEhLVQAEoAAWgABSAAlAACkABwDXGABSAAlAACkABKAAFoAAUUKQA4FqRkKgGCkABKAAFoAAUgAJQAAoArjEGoAAUgAJQAApAASgABaCAIgUA14qERDVQAApAASgABaAAFIACUABwjTEABaAAFIACUAAKQAEoAAUUKQC4ViQkqoECUAAKQAEoAAWgABSAAoBrjAEoAAWgABSAAlAACkABKKBIAcC1IiFRDRSAAlAACkABKAAFoAAUAFxjDEABKAAFoAAUgAJQAApAAUUKAK4VCYlqoAAUgAJQAApAASgABaAA4BpjAApAASgABaAAFIACUAAKKFIAcK1ISFQDBaAAFIACUAAKQAEoAAUA1xgDUAAKQAEoAAWgABSAAlBAkQKAa0VCohooAAWgABSAAlAACkABKAC4xhiAAlAACkABKAAFoAAUgAKKFABcKxIS1UABKAAFoAAUgAJQAApAAcA1xgAUgAJQAApAASgABaAAFFCkAOBakZCoBgpAASgABaAAFIACUAAKAK4xBqAAFIACUAAKQAEoAAWggCIFANeKhEQ1UAAKQAEoAAWgABSAAlAAcI0xAAWgABSAAlAACkABKAAFFCkAuFYkJKqBAlAACkABKAAFoAAUgAKAa4wBKAAFoAAUgAJQAApAASigSAHAtSIhUQ0UgAJQAApAASgABaAAFABcYwxAASgABaAAFIACUAAKQAFFCgCuFQmJaqAAFIACUAAKQAEoAAWgAOAaYwAKQAEoAAWgABSAAlAACihSAHCtSEhUAwWgABSAAlAACkABKAAFANcYA1AACkABKAAFoAAUgAJQQJECgGtFQqIaKAAFoAAUgAJQAApAASgAuMYYgAJQAApA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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig0 = dynamics.plot_curves(colors=['green', 'orange', 'blue'], suppress=True) # Prepare, but don't show, the main plot\n", "\n", "# Add a second plot, with a horizontal red line at concentration = 0\n", "fig1 = px.line(x=[0,0.9], y=[0,0], color_discrete_sequence = ['red'])\n", "\n", "# Combine the plots, and display them\n", "all_fig = go.Figure(data=fig0.data + fig1.data, layout = fig0.layout) # Note that the + is concatenating lists\n", "all_fig.update_layout(title=\"Changes in concentrations; notice the several dips into negative concentrations (red line)\")\n", "all_fig.show()" ] }, { "cell_type": "markdown", "id": "0c1e8dc5-cc40-416c-8da2-aa8eefa0fb9e", "metadata": {}, "source": [ "# There are 3 separate scenarios that lead to negative concentrations\n", "\n", "[More information](https://life123.science/reactions)\n", "\n", "#### Scenario 1 : A reaction causes a dip into the negative, and the combined other reactions fail to remedy it\n", "\n", "#### Scenario 2 : A reaction causes a dip into the negative, and the other reactions counterbalance it enough to remedy it\n", "(though \"counterbalanced\", this is still regarded as a sign of instability)\n", "\n", "#### Scenario 3 : No single reaction causes any negative concentration, but - combined - they do" ] }, { "cell_type": "markdown", "id": "75e3bad6-b3fb-4aac-a181-cf12f2ffd7d1", "metadata": {}, "source": [ "**Example of scenario 1** (all the necessary diagnostic data in the next several rows) \n", "The step from t=0.1 to 0.2 : \n", "[S] is initially 50 \n", "* Reaction 0 causes a Delta_S of -64.000000 , which would send it into the negative \n", "(leading to message _\"*** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction 2 S <-> U\"_) \n", "* Reaction 1 causes a Delta_S of -9.000000 , which is fine by itself (no error message) but fails to remedy the negative (in fact, makes it worse) \n", "\n", "The net result is [S] = 50 -64 -9 = -23 at the final t=0.2 \n", "That's what had led to the message _\"+++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.1\"_" ] }, { "cell_type": "markdown", "id": "dcbc6e51-5603-44c4-8ae3-853e49220acb", "metadata": {}, "source": [ "**Example of scenario 2** (all the necessary diagnostic data in the next several rows) \n", "The step from t=0.4 to 0.5 : \n", "[S] is initially -67.99 \n", "* Reaction 0 causes a Delta_S of 146.96 , which would remedy the negative when combined with the initial value \n", "* Reaction 1 causes a Delta_S of 63.927 , sending [S] into the negative (or, in this case, keeping it into the negative); \n", "(leading to message _\"*** DETECTING NEGATIVE CONCENTRATION in chemical `S` from reaction S <-> X\"_)\n", "\n", "The net result is [S] = -67.99 +146.96 +63.927 = 142.897 at the final t=0.5 \n", "The value is now positive, so there's no SYSTEM STATE ERROR" ] }, { "cell_type": "markdown", "id": "35f17ed7-0ef6-4cc7-81e9-f096f92343ab", "metadata": {}, "source": [ "**Example of scenario 3** \n", "This scenario doesn't occur in this run, but scroll down to RUN 2 - where it occurs. \n", "An example would be if the initial concentration were 20, and each of the two reactions caused a delta_concentration of -15 ; \n", "combined, they'll bring to concentration to 20 -15 -15 = -10" ] }, { "cell_type": "code", "execution_count": 9, "id": "dfe04bbd-c449-452a-9286-86dfd1e6972f", "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", "
SYSTEM TIMEUXScaption
00.050.000000100.0000000.000000Initial state
10.140.00000070.00000050.000000
20.272.00000079.000000-23.000000
30.339.20000041.50000080.100000
40.495.44000077.110000-67.990000
50.521.96000013.183000142.897000
60.6131.88560094.966300-158.737500
70.7-21.481520-28.766090271.729130
80.8200.198088142.901215-343.297391
90.9-114.479442-105.947584534.906469
\n", "
" ], "text/plain": [ " SYSTEM TIME U X S caption\n", "0 0.0 50.000000 100.000000 0.000000 Initial state\n", "1 0.1 40.000000 70.000000 50.000000 \n", "2 0.2 72.000000 79.000000 -23.000000 \n", "3 0.3 39.200000 41.500000 80.100000 \n", "4 0.4 95.440000 77.110000 -67.990000 \n", "5 0.5 21.960000 13.183000 142.897000 \n", "6 0.6 131.885600 94.966300 -158.737500 \n", "7 0.7 -21.481520 -28.766090 271.729130 \n", "8 0.8 200.198088 142.901215 -343.297391 \n", "9 0.9 -114.479442 -105.947584 534.906469 " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df" ] }, { "cell_type": "code", "execution_count": 10, "id": "a090c46a-2fb0-4895-ab4f-c035640be6c9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: 2 S <-> U\n" ] }, { "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", "
TIMEDelta UDelta XDelta Sreactionsubsteptime_subdivisiondelta_timecaption
00.0-10.0000000.020.0000000010.1
10.132.0000000.0-64.0000000010.1
20.2-32.8000000.065.6000000010.1
30.356.2400000.0-112.4800000010.1
40.4-73.4800000.0146.9600000010.1
50.5109.9256000.0-219.8512000010.1
60.6-153.3671200.0306.7342400010.1
70.7221.6796080.0-443.3592160010.1
80.8-314.6775300.0629.3550610010.1
\n", "
" ], "text/plain": [ " TIME Delta U Delta X Delta S reaction substep time_subdivision \\\n", "0 0.0 -10.000000 0.0 20.000000 0 0 1 \n", "1 0.1 32.000000 0.0 -64.000000 0 0 1 \n", "2 0.2 -32.800000 0.0 65.600000 0 0 1 \n", "3 0.3 56.240000 0.0 -112.480000 0 0 1 \n", "4 0.4 -73.480000 0.0 146.960000 0 0 1 \n", "5 0.5 109.925600 0.0 -219.851200 0 0 1 \n", "6 0.6 -153.367120 0.0 306.734240 0 0 1 \n", "7 0.7 221.679608 0.0 -443.359216 0 0 1 \n", "8 0.8 -314.677530 0.0 629.355061 0 0 1 \n", "\n", " delta_time caption \n", "0 0.1 \n", "1 0.1 \n", "2 0.1 \n", "3 0.1 \n", "4 0.1 \n", "5 0.1 \n", "6 0.1 \n", "7 0.1 \n", "8 0.1 " ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_data(rxn_index=0)" ] }, { "cell_type": "code", "execution_count": 11, "id": "388adda6-fded-41a7-bade-009bd692a432", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: S <-> X\n" ] }, { "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", "
TIMEDelta UDelta XDelta Sreactionsubsteptime_subdivisiondelta_timecaption
00.00.0-30.00000030.0000001010.1
10.10.09.000000-9.0000001010.1
20.20.0-37.50000037.5000001010.1
30.30.035.610000-35.6100001010.1
40.40.0-63.92700063.9270001010.1
50.50.081.783300-81.7833001010.1
60.60.0-123.732390123.7323901010.1
70.70.0171.667305-171.6673051010.1
80.80.0-248.848799248.8487991010.1
\n", "
" ], "text/plain": [ " TIME Delta U Delta X Delta S reaction substep time_subdivision \\\n", "0 0.0 0.0 -30.000000 30.000000 1 0 1 \n", "1 0.1 0.0 9.000000 -9.000000 1 0 1 \n", "2 0.2 0.0 -37.500000 37.500000 1 0 1 \n", "3 0.3 0.0 35.610000 -35.610000 1 0 1 \n", "4 0.4 0.0 -63.927000 63.927000 1 0 1 \n", "5 0.5 0.0 81.783300 -81.783300 1 0 1 \n", "6 0.6 0.0 -123.732390 123.732390 1 0 1 \n", "7 0.7 0.0 171.667305 -171.667305 1 0 1 \n", "8 0.8 0.0 -248.848799 248.848799 1 0 1 \n", "\n", " delta_time caption \n", "0 0.1 \n", "1 0.1 \n", "2 0.1 \n", "3 0.1 \n", "4 0.1 \n", "5 0.1 \n", "6 0.1 \n", "7 0.1 \n", "8 0.1 " ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_data(rxn_index=1)" ] }, { "cell_type": "code", "execution_count": null, "id": "afd82fd6-5051-44c9-bc52-9094a36347e7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "c3660bf1-f2b9-418b-8646-15ab368183cf", "metadata": {}, "source": [ "##################################################################################" ] }, { "cell_type": "markdown", "id": "b9ce3ea9-1711-45d0-861d-8caf5ae662d6", "metadata": {}, "source": [ "# RUN 2 : we restored some, but not all, of the code that had been disabled in Run #1. \n", "## Negative concentrations from *individual* reactions are now automatically corrected - but negative concentrations from *combined* (synergistic) reactions can still slip thru\n", "### (With the restored code) Life123 automatically detects whenever an individual reaction would cause any chemical concentration to go negative. \n", "At that point, it raises an `ExcessiveTimeStep` exception.\n", "That exception gets caught - which results in the following: \n", "* the (partial) execution of the last step gets discarded\n", "* the step size gets halved\n", "* the run automatically resumes from the previous time\n", "\n", "Such an automatic detection and remediation eliminates \"Scenarios 1 and 2\" (see earlier in notebook for definitions) BUT NOT \"scenario 3\" \n", "IMPORTANT: scenario 3 normally gets caught and remedied, too - but that feature got disabled by a code change in this run, _FOR DEMONSTRATION PURPOSES_\n", "\n", "This run required the disabling of multiple software features that detect, and automatically correct, such issues. \n", "It cannot be replicated with current versions of Life123. **DO NOT ATTEMPT TO RE-RUN!**" ] }, { "cell_type": "code", "execution_count": 4, "id": "03aff58b-7354-4d15-84ea-4a74bff4a832", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "3 species:\n", " Species 0 (U). Conc: 50.0\n", " Species 1 (X). Conc: 100.0\n", " Species 2 (S). Conc: 0.0\n" ] } ], "source": [ "# Same as for Run #1\n", "dynamics = ReactionDynamics(reaction_data=chem_data)\n", "dynamics.set_conc(conc={\"U\": 50., \"X\": 100., \"S\": 0.})\n", "dynamics.describe_state()" ] }, { "cell_type": "code", "execution_count": 5, "id": "eca11aad-d41e-4705-9252-4cb4ba0b2066", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "+++++++++++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.45\n", "The computation took 2 extra step(s) - automatically added to prevent negative concentrations\n", "10 total step(s) taken\n", "From time 0 to 0.1, in 1 FULL step of 0.1\n", "From time 0.1 to 0.15, in 1 substep of 0.05 (1/2 of full step)\n", "From time 0.15 to 0.65, in 5 FULL steps of 0.1\n", "From time 0.65 to 0.7, in 1 substep of 0.05 (1/2 of full step)\n", "From time 0.7 to 0.9, in 2 FULL steps of 0.1\n", "(for a grand total of the equivalent of 9 FULL steps)\n" ] } ], "source": [ "dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n", "\n", "# ************ DO NOT RUN : Life123 automatically catches and corrects these errors;\n", "# this run required a code change for demonstration purposes! \n", "# If you run it, you WILL NOT REPLICATE the results below.\n", "# This is meant to be a \"frozen run\"\n", "dynamics.single_compartment_react(time_step=0.1, stop_time=0.8)\n", "\n", "dynamics.explain_time_advance()" ] }, { "cell_type": "markdown", "id": "e9643a15-97a4-4066-aae6-bd446c4a64cd", "metadata": {}, "source": [ "### Notice how the system automatically temporarily slowed down from the requested time step of 0.1 at t=0.1 and again at t=0.65 \n", "Those actions intercepted, and automatically remedied, some - but NOT all - of the negative concentrations (explained below in the notebook.) \n", "We now took a total of 10 steps, instead of the 9 ones of Run #1" ] }, { "cell_type": "code", "execution_count": 6, "id": "efc858d3-3cf2-4c63-9a8f-63f6efe1656d", "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", "
SYSTEM TIMEUXScaption
00.0050.000000100.0000000.000000Initial state
10.1040.00000070.00000050.000000
20.1556.00000074.50000013.500000
30.2555.60000060.25000028.550000
40.3567.32000059.3050006.055000
50.4558.70000045.14650037.453500
60.5576.92280054.074650-7.920250
70.6555.20204033.10010556.495815
80.7072.28016245.08383410.355842
90.8066.10880337.77218930.010204
100.9076.89520644.4466551.762933
\n", "
" ], "text/plain": [ " SYSTEM TIME U X S caption\n", "0 0.00 50.000000 100.000000 0.000000 Initial state\n", "1 0.10 40.000000 70.000000 50.000000 \n", "2 0.15 56.000000 74.500000 13.500000 \n", "3 0.25 55.600000 60.250000 28.550000 \n", "4 0.35 67.320000 59.305000 6.055000 \n", "5 0.45 58.700000 45.146500 37.453500 \n", "6 0.55 76.922800 54.074650 -7.920250 \n", "7 0.65 55.202040 33.100105 56.495815 \n", "8 0.70 72.280162 45.083834 10.355842 \n", "9 0.80 66.108803 37.772189 30.010204 \n", "10 0.90 76.895206 44.446655 1.762933 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = dynamics.get_history()\n", "df" ] }, { "cell_type": "markdown", "id": "15fa7235-7de7-431d-9448-59f92cd01e93", "metadata": {}, "source": [ "## Notice how [S] dips into negative values at t=0.55!\n", "But all the multitude of other negative dips we had in Run #1 are now gone :)" ] }, { "cell_type": "code", "execution_count": 7, "id": "761a4758-ed3c-4875-a607-948c7af80ae0", "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=U
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "U", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "U", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.15000000000000002, 0.25, 0.35, 0.44999999999999996, 0.5499999999999999, 0.6499999999999999, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 50, 40, 56, 55.6, 67.32000000000001, 58.7, 76.92280000000001, 55.202040000000004, 72.280162, 66.1088034, 76.8952061 ], "yaxis": "y" }, { "hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "X", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "X", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.15000000000000002, 0.25, 0.35, 0.44999999999999996, 0.5499999999999999, 0.6499999999999999, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 100, 70, 74.5, 60.25, 59.305, 45.1465, 54.074650000000005, 33.100105, 45.083833750000004, 37.772188975000006, 44.446654817500004 ], "yaxis": "y" }, { "hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "S", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "S", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.15000000000000002, 0.25, 0.35, 0.44999999999999996, 0.5499999999999999, 0.6499999999999999, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 0, 50, 13.5, 28.55, 6.055, 37.453500000000005, -7.920250000000003, 56.495815000000015, 10.355842250000002, 30.010204225000003, 1.7629329824999935 ], "yaxis": "y" }, { "hovertemplate": "x=%{x}
y=%{y}", "legendgroup": "", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "", "orientation": "v", "showlegend": false, "type": "scatter", "x": [ 0, 0.9 ], "xaxis": "x", "y": [ 0, 0 ], "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": "Changes in concentrations; notice how S dips into negative concentrations (red line) at t=0.55" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 0.9 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -13.915819444444448, 105.99556944444444 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/UAAAFoCAYAAAAW3NtNAAAgAElEQVR4Xuy9CbwcVZn+/3bfvltyc7Pv+0JIiAFEFgOERdnUAQOCODoqKjqgw8xPFNkUlWEVcf4zqCBuODrKJgRQQUAIELaACAmQPSEJCdn3m7t0377/9z3V1albqequ6j51uvrep/LpT990V51T9T3V7zlPve95T6KLN8IGAiAAAiAAAiAAAiAAAiAAAiAAAiBQdQQSEPVV12Y4YRAAARAAARAAARAAARAAARAAARBQBCDqcSOAAAiAAAiAAAiAAAiAAAiAAAiAQJUSgKiv0obDaYMACIAACIAACIAACIAACIAACIAARD3uARAAARAAARAAARAAARAAARAAARCoUgIQ9VXacDhtEAABEAABEAABEAABEAABEAABEICoxz0AAiAAAiAAAiAAAiAAAiAAAiAAAlVKAKK+ShsOpw0CIAACIAACIAACIAACIAACIAACEPW4B0AABEAABEAABEAABEAABEAABECgSglA1Fdpw+G0QQAEQAAEQAAEQAAEQAAEQAAEQACiHvcACIAACIAACIAACIAACIAACIAACFQpAYj6Km04nDYIgAAIgAAIgAAIgAAIgAAIgAAIQNTjHgABEAABEAABEAABEAABEAABEACBKiUAUV+lDYfTBgEQAAEQAAEQAAEQAAEQAAEQAAGIetwDIAACIAACIAACIAACIAACIAACIFClBCDqq7ThcNogAAIgAAIgAAIgAAIgAAIgAAIgAFGPewAEQAAEQAAEQAAEQAAEQAAEQAAEqpQARH2VNhxOGwRAAARAAARAAARAAARAAARAAAQg6nEPgAAIgAAIgAAIgAAIgAAIgAAIgECVEoCor9KGw2mDAAiAAAiAAAiAAAiAAAiAAAiAAEQ97gEQAAEQAAEQAAEQAAEQAAEQAAEQqFICEPVV2nA4bRAAARAAARAAARAAARAAARAAARCAqMc9AAIgAAIgAAIgAAIgAAIgAAIgAAJVSgCivkobDqcNAiAAAiAAAiAAAiAAAiAAAiAAAhD1uAdAAARAAARAAARAAARAAARAAARAoEoJQNRXacPhtEEABEAABEAABEAABEAABEAABEAAoh73AAiAAAiAAAiAAAiAAAiAAAiAAAhUKQGI+iptOJw2CIAACIAACIAACIAACIAACIAACEDU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BEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAgAgIQ9RFARZEgAAIgAAIgAAIgAAIgAAIgAAIgYIIARL0JyqgDBEAABEAABEAABEAABEAABEAABCIgAFEfAVQUCQIgAAIgAAIgAAIgAAIgAAIgAAImCEDUm6CMOkAABEAABEAABEAABEAABEAABEAg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px1yEzGMZ9hum03FBx99ItZfbx3lGg/vART8XZyi3rRdk/dI+SfCxyMBEiABEiCBVBOgqE919/DhSIAESIAE4iaghbVuR59p767d0rPoby6YtcJltnVVE/UmZ+ohrvvtvJ06Q4/nwfNh1/7nN98du6g3aZdn6uP+glk/CZAACZBArROgqK/1L4DvTwIkQAIk0ElAu67rv6jklq+FuA6i1x0+m7qinKmHqNfB6/As2nvAZoc8zJl603ZtnoOfIgmQAAmQAAmQgD0Binp7ZryDBEiABEigBgjAjR2R38t34yudpa+Go7u6qu3UV3Of1+73EPU66r5eILAR01FEfbV2bZ6jGkf+OwmQAAmQAAmQwMoEKOr5VZAACZAACdQsAQj0O++br3a6y4sWq+VR8bsT9WHqcinq8fw406/T7tmI6Siivlq7Ns9Rsx8iX5wESIAESIAEIhCgqI8Aj7eSAAmQAAlkm0Cpi3zpjnxpBPnSQHh4255EPaLho5jW5VrUl/aGjZiOKup7atfmObL9NfHpSYAESIAESCAZAhT1yXBnqyRAAiRAAikiUBr8Tj9Wd2fmq7nf29RVTdSbBsqr5GlgI6a7ew59bEAz0TEGSt3+y7uxvF0GykvRh85HIQESIAESyCUBivpcditfigRIgARIgARIgARIgARIgARIoBYIUNTXQi/zHUmABEiABEiABEiABEiABEiABHJJgKI+l93KlyIBEiABEiABEiABEiABEiABEqgFAhT1tdDLfEcSIAESIAESIAESIAESIAESIIFcEqCoz2W38qVIgARIgARIgARIgARIgARIgARqgQBFfS30Mt+RBEiABEiABEiABEiABEiABEgglwQo6nPZrXwpEiABEiABEiABEiABEiABEiCBWiBAUV8Lvcx3JAESIAESIAESIAESIAESIAESyCUBivpcditfigRIgARIgARIgARIgARIgARIoBYIUNTXQi/zHUmABEiABEiABEiABEiABEiABHJJgKI+l93KlyIBEiABEiABEiABEiABEiABEqgFAhT1tdDLfEcSIAESIAESIAESIAESIAESIIFcEqCoz2W38qVIgARIgARIgARIgARIgARIgARqgQBFfS30Mt+RBEiABEiABEiABEiABEiABEgglwQo6nPZrXwpEiABEiABEiABEiABEiABEiCBWiBAUV8Lvcx3JAESIAESIAESIAESIAESIAESyCUBivpcditfigRIgARIgARIgARIgARIgARIoBYIUNTXQi/zHUmABEiABEiABEiABEiABEiABHJJgKI+l93KlyIBEiABEiABEiABEiABEiABEqgFAhT1tdDLfEcSIAESIAESIAESIAESIAESIIFcEqCoz2W38qVIgARIgARIgARIgARIgARIgARqgQBFfS30Mt+RBEiABEiABEiABEiABEiABEgglwQo6nPZrXwpEiABEiABEiABEiABEiABEiCBWiBAUV8Lvcx3JAESIAESIAESIAESIAESIAESyCUBivpcditfigRIgARIgARIgARIgARIgARIoBYIUNTXQi/zHUmABEiABEiABEiABEiABEiABHJJgKI+l93KlyIBEiABEiABEiABEiABEiABEqgFAhT1tdDLfEcSIAESIAESIAESIAESIAESIIFcEqCoz2W38qVIgARIgARIgARIgARIgARIgARqgQBFfS30Mt+RBEiABEiABEiABEiABEiABEgglwQo6nPZrXwpEiABEiABEiABEiABEiABEiCBWiBAUV8Lvcx3JAESIAESIAESIAESIAESIAESyCUBivpcditfigRIgARIgARIgARIgARIgARIoBYIUNTXQi/zHUmABEiABEiABEiABEiABEiABHJJgKI+l93KlyIBEiABEiABEiABEiABEiABEqgFAhT1tdDLfEcSIAESIAESIAESIAESIAESIIFcEqCoz2W38qVIgARIgARIgARIgARIgARIgARqgQBFfS30Mt+RBEiABEiABEiABEiABEiABEgglwT+HwjOAGhqp1feAAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig0 = dynamics.plot_curves(colors=['green', 'orange', 'blue'], suppress=True) # Prepare, but don't show, the main plot\n", "\n", "# Add a second plot, with a horizontal red line at concentration = 0\n", "fig1 = px.line(x=[0,0.9], y=[0,0], color_discrete_sequence = ['red'])\n", "\n", "# Combine the plots, and display them\n", "all_fig = go.Figure(data=fig0.data + fig1.data, layout = fig0.layout) # Note that the + is concatenating lists\n", "all_fig.update_layout(title=\"Changes in concentrations; notice how S dips into negative concentrations (red line) at t=0.55\")\n", "all_fig.show()" ] }, { "cell_type": "markdown", "id": "1e3ac47c-4446-48d8-94cb-67f164d32d6a", "metadata": {}, "source": [ "## With this partially-restored functionality, we're averting what we called \"scenarios 1 and 2\" earlier in the notebook - but are still afflicted by \"scenario 3\" (no single reaction causes any negative concentration, but - combined - they do)" ] }, { "cell_type": "markdown", "id": "b5b816f5-1c0f-41bc-810a-3172c8b8abfd", "metadata": {}, "source": [ "**That's exactly what happens to [S] at t=0.55** (all the necessary diagnostic data in the next few rows) \n", "The step from t=0.45 to 0.55 : \n", "[S] is initially 37.453500 \n", "* Reaction 0 causes a Delta_S of -36.445600 , which by itself would cause no problem \n", "* Reaction 1 causes a Delta_S of -8.928150 , by itself would cause no problem - but leads to a negative value when combined with reaction 0! \n", "\n", "The net result is [S] = 37.453500 -36.445600 -8.928150 = -7.92025 at the final t=0.55 \n", "That's what had led to the message _\"+++ SYSTEM STATE ERROR: FAILED TO CATCH negative concentration upon advancing reactions from system time t=0.45\"_" ] }, { "cell_type": "code", "execution_count": 8, "id": "af7fb1fb-fb68-4a30-821d-d96f882320bd", "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", "
SYSTEM TIMEUXScaption
00.0050.000000100.0000000.000000Initial state
10.1040.00000070.00000050.000000
20.1556.00000074.50000013.500000
30.2555.60000060.25000028.550000
40.3567.32000059.3050006.055000
50.4558.70000045.14650037.453500
60.5576.92280054.074650-7.920250
70.6555.20204033.10010556.495815
80.7072.28016245.08383410.355842
90.8066.10880337.77218930.010204
100.9076.89520644.4466551.762933
\n", "
" ], "text/plain": [ " SYSTEM TIME U X S caption\n", "0 0.00 50.000000 100.000000 0.000000 Initial state\n", "1 0.10 40.000000 70.000000 50.000000 \n", "2 0.15 56.000000 74.500000 13.500000 \n", "3 0.25 55.600000 60.250000 28.550000 \n", "4 0.35 67.320000 59.305000 6.055000 \n", "5 0.45 58.700000 45.146500 37.453500 \n", "6 0.55 76.922800 54.074650 -7.920250 \n", "7 0.65 55.202040 33.100105 56.495815 \n", "8 0.70 72.280162 45.083834 10.355842 \n", "9 0.80 66.108803 37.772189 30.010204 \n", "10 0.90 76.895206 44.446655 1.762933 " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df" ] }, { "cell_type": "code", "execution_count": 9, "id": "1bd0aea3-8e21-411e-ad8e-837d8fa7c1ce", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: 2 S <-> U\n" ] }, { "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", "
TIMEDelta UDelta XDelta Sreactionsubsteptime_subdivisiondelta_timecaption
00.00-10.0000000.020.0000000010.10
10.1016.0000000.0-32.0000000010.05
20.15-0.4000000.00.8000000010.10
30.2511.7200000.0-23.4400000010.10
40.35-8.6200000.017.2400000010.10
50.4518.2228000.0-36.4456000010.10
60.55-21.7207600.043.4415200010.10
70.6517.0781220.0-34.1562440010.05
80.70-6.1713590.012.3427170010.10
90.8010.7864030.0-21.5728050010.10
\n", "
" ], "text/plain": [ " TIME Delta U Delta X Delta S reaction substep time_subdivision \\\n", "0 0.00 -10.000000 0.0 20.000000 0 0 1 \n", "1 0.10 16.000000 0.0 -32.000000 0 0 1 \n", "2 0.15 -0.400000 0.0 0.800000 0 0 1 \n", "3 0.25 11.720000 0.0 -23.440000 0 0 1 \n", "4 0.35 -8.620000 0.0 17.240000 0 0 1 \n", "5 0.45 18.222800 0.0 -36.445600 0 0 1 \n", "6 0.55 -21.720760 0.0 43.441520 0 0 1 \n", "7 0.65 17.078122 0.0 -34.156244 0 0 1 \n", "8 0.70 -6.171359 0.0 12.342717 0 0 1 \n", "9 0.80 10.786403 0.0 -21.572805 0 0 1 \n", "\n", " delta_time caption \n", "0 0.10 \n", "1 0.05 \n", "2 0.10 \n", "3 0.10 \n", "4 0.10 \n", "5 0.10 \n", "6 0.10 \n", "7 0.05 \n", "8 0.10 \n", "9 0.10 " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_data(rxn_index=0)" ] }, { "cell_type": "code", "execution_count": 10, "id": "36e24403-4506-4264-985a-d2a9a11b0d16", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: S <-> X\n" ] }, { "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", "
TIMEDelta UDelta XDelta Sreactionsubsteptime_subdivisiondelta_timecaption
00.000.0-30.00000030.0000001010.10
10.100.04.500000-4.5000001010.05
20.150.0-14.25000014.2500001010.10
30.250.0-0.9450000.9450001010.10
40.350.0-14.15850014.1585001010.10
50.450.08.928150-8.9281501010.10
60.550.0-20.97454520.9745451010.10
70.650.011.983729-11.9837291010.05
80.700.0-7.3116457.3116451010.10
90.800.06.674466-6.6744661010.10
\n", "
" ], "text/plain": [ " TIME Delta U Delta X Delta S reaction substep time_subdivision \\\n", "0 0.00 0.0 -30.000000 30.000000 1 0 1 \n", "1 0.10 0.0 4.500000 -4.500000 1 0 1 \n", "2 0.15 0.0 -14.250000 14.250000 1 0 1 \n", "3 0.25 0.0 -0.945000 0.945000 1 0 1 \n", "4 0.35 0.0 -14.158500 14.158500 1 0 1 \n", "5 0.45 0.0 8.928150 -8.928150 1 0 1 \n", "6 0.55 0.0 -20.974545 20.974545 1 0 1 \n", "7 0.65 0.0 11.983729 -11.983729 1 0 1 \n", "8 0.70 0.0 -7.311645 7.311645 1 0 1 \n", "9 0.80 0.0 6.674466 -6.674466 1 0 1 \n", "\n", " delta_time caption \n", "0 0.10 \n", "1 0.05 \n", "2 0.10 \n", "3 0.10 \n", "4 0.10 \n", "5 0.10 \n", "6 0.10 \n", "7 0.05 \n", "8 0.10 \n", "9 0.10 " ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_data(rxn_index=1)" ] }, { "cell_type": "code", "execution_count": null, "id": "73470fcc-c408-433c-b667-e5caa6961b2b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "a710a1ae-fa4a-4cd2-abc6-89e79a0cae7c", "metadata": {}, "source": [ "##################################################################################" ] }, { "cell_type": "markdown", "id": "93338e23-b272-4e28-b3f9-c509f738c47c", "metadata": {}, "source": [ "# RUN 3 : we restored ALL the code that had been disabled in the earlier runs.\n", "## Negative concentrations from *individual* reactions are now automatically corrected - and so are negative concentrations from *combined* (synergistic) reactions\n", "### (With the restored code) Life123 automatically detects whenever any chemical concentration goes negative from any cause. \n", "At that point, it raises an `ExcessiveTimeStep` exception.\n", "That exception gets caught - which results in the following: \n", "* the (partial) execution of the last step gets discarded\n", "* the step size gets halved\n", "* the run automatically resumes from the previous time" ] }, { "cell_type": "code", "execution_count": 4, "id": "4c0c3806-2294-4d8f-8e1c-834a01a7378e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "3 species:\n", " Species 0 (U). Conc: 50.0\n", " Species 1 (X). Conc: 100.0\n", " Species 2 (S). Conc: 0.0\n" ] } ], "source": [ "# Same as for the previous runs\n", "dynamics = ReactionDynamics(reaction_data=chem_data)\n", "dynamics.set_conc(conc={\"U\": 50., \"X\": 100., \"S\": 0.})\n", "dynamics.describe_state()" ] }, { "cell_type": "code", "execution_count": 5, "id": "fc94d565-ba29-41c9-966b-43d76f70f761", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "******** CAUTION: negative concentration in chemical `S` (resulting from reaction 2 S <-> U)\n", " upon advancing from system time t=0.1 [Baseline value: 50 ; delta conc: -64]\n", " It will be AUTOMATICALLY CORRECTED with a reduction in the time step size\n", "******** CAUTION: negative concentration resulting from the combined effect of multiple reactions, upon advancing reactions from system time t=0.45\n", " It will be AUTOMATICALLY CORRECTED with a reduction in the time step size\n", "The computation took 2 extra step(s) - automatically added to prevent negative concentrations\n", "10 total step(s) taken\n", "From time 0 to 0.1, in 1 FULL step of 0.1\n", "From time 0.1 to 0.15, in 1 substep of 0.05 (1/2 of full step)\n", "From time 0.15 to 0.45, in 3 FULL steps of 0.1\n", "From time 0.45 to 0.5, in 1 substep of 0.05 (1/2 of full step)\n", "From time 0.5 to 0.9, in 4 FULL steps of 0.1\n", "(for a grand total of the equivalent of 9 FULL steps)\n" ] } ], "source": [ "dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n", "\n", "dynamics.single_compartment_react(time_step=0.1, stop_time=0.8)\n", "\n", "dynamics.explain_time_advance()" ] }, { "cell_type": "markdown", "id": "c83c9ba3-efcf-4d21-ada3-fe7459b16af0", "metadata": {}, "source": [ "### Notice how the system automatically temporarily slowed down from the requested time step of 0.1 at t=0.1 and again at t=0.45 \n", "Those actions intercepted, and automatically remedied, ALL the negative concentrations, whether caused by any single reaction, or by the cumulative effect of multiple ones. \n", "We now took a total of 10 steps, instead of the 9 ones of Run #1" ] }, { "cell_type": "code", "execution_count": 6, "id": "b568da5d-8f10-4128-8472-8ab34dd917a4", "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", "
SYSTEM TIMEUXScaption
00.0050.000000100.0000000.000000Initial state
10.1040.00000070.00000050.000000
20.1556.00000074.50000013.500000
30.2555.60000060.25000028.550000
40.3567.32000059.3050006.055000
50.4558.70000045.14650037.453500
60.5067.81140049.61057514.766625
70.6066.06242043.58737824.287783
80.7072.28016245.08383410.355842
90.8066.10880337.77218930.010204
100.9076.89520644.4466551.762933
\n", "
" ], "text/plain": [ " SYSTEM TIME U X S caption\n", "0 0.00 50.000000 100.000000 0.000000 Initial state\n", "1 0.10 40.000000 70.000000 50.000000 \n", "2 0.15 56.000000 74.500000 13.500000 \n", "3 0.25 55.600000 60.250000 28.550000 \n", "4 0.35 67.320000 59.305000 6.055000 \n", "5 0.45 58.700000 45.146500 37.453500 \n", "6 0.50 67.811400 49.610575 14.766625 \n", "7 0.60 66.062420 43.587378 24.287783 \n", "8 0.70 72.280162 45.083834 10.355842 \n", "9 0.80 66.108803 37.772189 30.010204 \n", "10 0.90 76.895206 44.446655 1.762933 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = dynamics.get_history()\n", "df" ] }, { "cell_type": "markdown", "id": "812cc2c8-a0fa-47e9-bd32-1bd35652ae2c", "metadata": {}, "source": [ "## Notice how negative concentrations are no longer seen anywhere :)" ] }, { "cell_type": "code", "execution_count": 7, "id": "acea7d10-a21b-4e33-9c29-0f218f2a189f", "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=U
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "U", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "U", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.15000000000000002, 0.25, 0.35, 0.44999999999999996, 0.49999999999999994, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 50, 40, 56, 55.6, 67.32000000000001, 58.7, 67.8114, 66.06242, 72.280162, 66.1088034, 76.8952061 ], "yaxis": "y" }, { "hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "X", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "X", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.15000000000000002, 0.25, 0.35, 0.44999999999999996, 0.49999999999999994, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 100, 70, 74.5, 60.25, 59.305, 45.1465, 49.610575000000004, 43.5873775, 45.083833750000004, 37.772188975, 44.446654817500004 ], "yaxis": "y" }, { "hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "S", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "S", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.1, 0.15000000000000002, 0.25, 0.35, 0.44999999999999996, 0.49999999999999994, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 0, 50, 13.5, 28.55, 6.055, 37.453500000000005, 14.766625000000001, 24.287782500000002, 10.35584225, 30.010204225000003, 1.76293298249999 ], "yaxis": "y" }, { "hovertemplate": "x=%{x}
y=%{y}", "legendgroup": "", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "", "orientation": "v", "showlegend": false, "type": "scatter", "x": [ 0, 0.9 ], "xaxis": "x", "y": [ 0, 0 ], "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": "Changes in concentrations; notice negative concentrations are totally absent now" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 0.9 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -5.555555555555555, 105.55555555555556 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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vZacX+acbbrH5L5+ZF/7fcQdG/f7g72gufvLcFBuzt/zRlOivd4L6sXOiyPeSy6pmxEuvOJ+LwnyHu31f3SzPyrVe2+X98GHHt1K7uzlZlm/Xr870offaf3u69H5++Z+rZ7ErtdGO585Gp23n/U5vX733J8/5Fxv5pkKzj/02DzlXOV55+b+P99rTbp6csrrc43zPSvo/x/u//cbXXetvG+7r+1611M9Qe0laxv9/4nXQAAEQAAEQAAEzCcAWWd+jJqOMMg6LU0bww4gEAOBRpkEMQxnTnbZSqXHOQkKJw0Cc4iA32Ux5hASnCoIgAAIgAAIgAAIREIAsi4SzPo6cU63tFtt9a/e+kaFlkCgPQIQRe3xC3q0ZHFIJuZpJ62pHdosoyhoH9gfBEAg+QSCZjwn/4xxBiAAAiAAAiAAAiBgBgHIOjPi4HsUXlMwsUaJb3zY0VAC8oXwmKWLZhU7MXS4iR+W13RCv9P4En/yOAEQAAFfBDC10hcm7AQCIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAACIAACIAACIBAKAci6ULCiURAAARAAARAAARAAARAAARAAARAAARAAARAITgCyLjgzHAECIAACIAACIAACIAACIAACIAACIAACIAACoRCArAsFKxoFARAAARAAARAAARAAARAAARAAARAAARAAgeAEIOuCM8MRIAACIAACIAACIAACIAACIAAC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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig0 = dynamics.plot_curves(colors=['green', 'orange', 'blue'], suppress=True) # Prepare, but don't show, the main plot\n", "\n", "# Add a second plot, with a horizontal red line at concentration = 0\n", "fig1 = px.line(x=[0,0.9], y=[0,0], color_discrete_sequence = ['red'])\n", "\n", "# Combine the plots, and display them\n", "all_fig = go.Figure(data=fig0.data + fig1.data, layout = fig0.layout) # Note that the + is concatenating lists\n", "all_fig.update_layout(title=\"Changes in concentrations; notice negative concentrations are totally absent now\")\n", "all_fig.show()" ] }, { "cell_type": "markdown", "id": "21f7a55d-09c9-4c06-8893-bebcbfc4b5a1", "metadata": {}, "source": [ "## With the completely-restored functionality, we're averting what we called \"scenarios 1, 2 and 3\" earlier in the notebook :)" ] }, { "cell_type": "code", "execution_count": null, "id": "4906c37c-38cd-4600-9713-c9da1c492a00", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "329e3e69-9db6-4f5a-876a-a63f7f5cb7bc", "metadata": {}, "source": [ "##################################################################################" ] }, { "cell_type": "markdown", "id": "04e74b37-abd8-4005-bd53-f4b0f1e9a2c7", "metadata": {}, "source": [ "# RUN 4 : same as the previous run, but with slightly finer time resolution\n", "\n", "In run 3, we demonstrated catching - and resolving - all cases of negative concentrations that would slip in if it weren't for Life123's detection and automatic remediation. But we still have a lot of instability, especially in [S].\n", "\n", "A slight improvement in the time steps will make a profound difference in this run" ] }, { "cell_type": "code", "execution_count": 8, "id": "b261a4c1-2185-46d2-a9e5-839ba57b22e2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "3 species:\n", " Species 0 (U). Conc: 50.0\n", " Species 1 (X). Conc: 100.0\n", " Species 2 (S). Conc: 0.0\n" ] } ], "source": [ "# Same as for the previous runs\n", "dynamics = ReactionDynamics(reaction_data=chem_data)\n", "dynamics.set_conc(conc={\"U\": 50., \"X\": 100., \"S\": 0.})\n", "dynamics.describe_state()" ] }, { "cell_type": "markdown", "id": "25bf72e9-2a5f-416e-aa3b-0a2ad40f1aeb", "metadata": {}, "source": [ "## Rather than decreasing (for the whole run) the time step of 0.1, we'll simply opt to AUTOMATICALLY take 2 substeps whenever any of the reactions are \"fast changing\" based on a threshold we provide" ] }, { "cell_type": "code", "execution_count": 9, "id": "95dc4ede-e840-4221-a315-f37ffe65446b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "single_compartment_react(): setting rel_fast_threshold to 800.0\n", "9 total step(s) taken\n", "From time 0 to 0.3, in 6 substeps of 0.05 (each 1/2 of full step)\n", "From time 0.3 to 0.9, in 6 FULL steps of 0.1\n", "(for a grand total of the equivalent of 9 FULL steps)\n" ] } ], "source": [ "dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n", "\n", "dynamics.single_compartment_react(time_step=0.1, stop_time=0.8, \n", " dynamic_substeps=2, abs_fast_threshold=80.0)\n", "\n", "dynamics.explain_time_advance()" ] }, { "cell_type": "markdown", "id": "730d32ea-1493-4abe-8f2c-12db25785d3c", "metadata": {}, "source": [ "### Note how the system automatically splits the time steps into substeps for up to t=0.3 \n", "that's when most of the change is occurring" ] }, { "cell_type": "code", "execution_count": 10, "id": "241b5266-3cd9-42fc-a0e4-0096d0405743", "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", "
SYSTEM TIMEUXScaption
00.0050.000000100.0000000.000000Initial state
10.0545.00000085.00000025.000000Interm. step, due to the fast rxns: [0, 1]
20.1050.50000079.75000019.250000
30.1553.15000073.56250020.137500Interm. step, due to the fast rxns: [0, 1]
40.2055.89000068.56937519.650625
50.2558.16125064.17915619.498344Interm. step, due to the fast rxns: [0, 1]
60.3060.14446360.40178619.309289
70.4063.56300153.86682419.007174
80.5066.05614049.11108118.776639
90.6067.86622345.64374018.623814
100.7069.19202943.12490618.491035
110.8070.14645241.28205518.425042
120.9070.85719539.95246418.333147
\n", "
" ], "text/plain": [ " SYSTEM TIME U X S \\\n", "0 0.00 50.000000 100.000000 0.000000 \n", "1 0.05 45.000000 85.000000 25.000000 \n", "2 0.10 50.500000 79.750000 19.250000 \n", "3 0.15 53.150000 73.562500 20.137500 \n", "4 0.20 55.890000 68.569375 19.650625 \n", "5 0.25 58.161250 64.179156 19.498344 \n", "6 0.30 60.144463 60.401786 19.309289 \n", "7 0.40 63.563001 53.866824 19.007174 \n", "8 0.50 66.056140 49.111081 18.776639 \n", "9 0.60 67.866223 45.643740 18.623814 \n", "10 0.70 69.192029 43.124906 18.491035 \n", "11 0.80 70.146452 41.282055 18.425042 \n", "12 0.90 70.857195 39.952464 18.333147 \n", "\n", " caption \n", "0 Initial state \n", "1 Interm. step, due to the fast rxns: [0, 1] \n", "2 \n", "3 Interm. step, due to the fast rxns: [0, 1] \n", "4 \n", "5 Interm. step, due to the fast rxns: [0, 1] \n", "6 \n", "7 \n", "8 \n", "9 \n", "10 \n", "11 \n", "12 " ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = dynamics.get_history()\n", "df" ] }, { "cell_type": "code", "execution_count": 11, "id": "58b15d08-6b49-4041-b067-6790ae138127", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=U
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "U", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "U", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.05, 0.1, 0.15000000000000002, 0.2, 0.25, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 50, 45, 50.5, 53.15, 55.89, 58.16125, 60.1444625, 63.56300125, 66.056140125, 67.8662232125, 69.19202948125, 70.14645150412501, 70.8571946076125 ], "yaxis": "y" }, { "hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "X", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "X", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.05, 0.1, 0.15000000000000002, 0.2, 0.25, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 100, 85, 79.75, 73.5625, 68.569375, 64.17915624999999, 60.401785937499994, 53.86682359375, 49.111080859374994, 45.6437399359375, 43.124906138593744, 41.282055236359376, 39.952463718685934 ], "yaxis": "y" }, { "hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "S", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "S", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.05, 0.1, 0.15000000000000002, 0.2, 0.25, 0.30000000000000004, 0.4, 0.5, 0.6, 0.7, 0.7999999999999999, 0.8999999999999999 ], "xaxis": "x", "y": [ 0, 25, 19.25, 20.1375, 19.650624999999998, 19.49834375, 19.3092890625, 19.00717390625, 18.776638890625, 18.623813639062497, 18.491034898906253, 18.42504175539062, 18.333147066089072 ], "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": "Changes in concentrations for 2 reactions" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 0.8999999999999999 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -5.555555555555555, 105.55555555555556 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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tf4AiVTxXs269HTY9NV1rLGbdXXRkibZ0GbdXvOW1DH/ilABAQIECBAgQOBgCGjWHYycVEmAAAECBAj0FKg/NCIPsemedNsugy0Za1uzrusDJtrODCxpkm2qI1++m03yPfzql982yZvzesBEz0VpNwIECBAgQIDAHgKadZYHAQIECBAgQIAAAQIECBAgQIAAgSACmnVBglAGAQIECBAgQIAAAQIECBAgQIAAAc06a4AAAQIECBAgQIAAAQIECBAgQIBAEAHNuiBBKIMAAQIECBAgQIAAAQIECBAgQICAZp01QIAAAQIECBAgQIAAAQIECBAgQCCIgGZdkCCUQYAAAQIECBAgQIAAAQIECBAgQECzzhogQIAAAQIECBAgQIAAAQIECBAgEERAsy5IEMogQIAAAQIECBAgQIAAAQIECBAgoFlnDRAgQIAAAQIECBAgQIAAAQIECBAIIqBZFyQIZRAgQIAAAQIECBAgQIAAAQIECBDQrLMGCBAgQIAAAQIECBAgQIAAAQIECAQR0KwLEoQyCBAgQIAAAQIECBAgQIAAAQIECGjWWQMECBAgQIAAAQIECBAgQIAAAQIEggho1gUJQhkECBAgQIAAAQIECBAgQIAAAQIENOusAQIECBAgQIAAAQIECBAgQIAAAQJBBDTrggShDAIECBAgQIAAAQIECBAgQIAAAQKaddYAAQIECBAgQIAAAQIECBAgQIAAgSACmnVBglAGAQIECBAgQIAAAQIECBAgQIAAAc06a4AAAQIECBAgQIAAAQIECBAgQIBAEAHNuiBBKIMAAQIECBAgQIAAAQIECBAgQICAZp01QIAAAQIECBAgQIAAAQIECBAgQCCIgGZdkCCUQYAAAQIECBAgQIAAAQIECBAgQECzzhogQIAAAQIECBAgQIAAAQIECBAgEERAsy5IEMogQIAAAQIECBAgQIAAAQIECBAgoFlnDRAgQIAAAQIECBAgQIAAAQIECBAIIqBZFyQIZRAgQIAAAQIECBAgQIAAAQIECBDQrLMGCBAgQIAAAQIECBAgQIAAAQIECAQR0KwLEoQyCBAgQIAAAQIECBAgQIAAAQIECGjWWQMECBAgQIAAAQIECBAgQIAAAQIEggho1gUJQhkECBAgQIAAAQIECBAgQIAAAQIENOusAQIECBAgQIAAAQIECBAgQIAAAQJBBDTrggShDAIECBAgQIAAAQIECBAgQIAAAQKaddYAAQIECBAgQIAAAQIECBAgQIAAgSACmnVBglAGAQIECBAgQIAAAQIECBAgQIAAAc06a4AAAQIECBAgQIAAAQIECBAgQIBAEAHNuiBBKIMAAQIECBAgQIAAAQIECBAgQICAZp01QIAAAQIECBAgQIAAAQIECBAgQCCIgGZdkCCUQYAAAQIECBAgQIAAAQIECBAgQOC/MPkMl6YEz/kAAAAASUVORK5CYII=", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_curves(colors=['green', 'orange', 'blue'])" ] }, { "cell_type": "markdown", "id": "8912283d-9fa2-49eb-8160-ae3f0a47c525", "metadata": {}, "source": [ "## The resolution is still coarse, especially up to t=0.1, but all the instability is gone :)" ] }, { "cell_type": "markdown", "id": "909f4875-91aa-41db-a799-df82b806c73a", "metadata": {}, "source": [ "### Note: For even more accurate solutions, see the experiment `large_time_steps_2`" ] }, { "cell_type": "code", "execution_count": null, "id": "13f8e2e7-55c9-409b-a6a4-bc2dffb67ead", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "jupytext": { "formats": "ipynb,py:percent" }, "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }