{ "cells": [ { "cell_type": "markdown", "id": "3bbe8002-bdf3-490c-bde0-80dd3713a3d0", "metadata": {}, "source": [ "## Association/Dissociation reaction `A + B <-> C`\n", "#### with 1st-order kinetics for each species, taken to equilibrium.\n", "#### Exploration of debugging and diagnostics options\n", "(Adaptive variable time steps are used)\n", "\n", "_See also the experiment \"1D/reactions/reaction_4\"_ \n", "\n", "LAST REVISED: July 14, 2023" ] }, { "cell_type": "code", "execution_count": 1, "id": "d28567a7-ae12-4df6-bf2f-8ea7b132596c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Added 'D:\\Docs\\- MY CODE\\BioSimulations\\life123-Win7' to sys.path\n" ] } ], "source": [ "import set_path # Importing this module will add the project's home directory to sys.path" ] }, { "cell_type": "code", "execution_count": 2, "id": "4bbaa8f3", "metadata": { "tags": [] }, "outputs": [], "source": [ "from experiments.get_notebook_info import get_notebook_basename\n", "\n", "from src.modules.chemicals.chem_data import ChemData as chem\n", "from src.modules.reactions.reaction_dynamics import ReactionDynamics\n", "\n", "from src.modules.visualization.graphic_log import GraphicLog" ] }, { "cell_type": "code", "execution_count": 3, "id": "83c3cc5f-de21-4f66-9988-2806fbf0666d", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-> Output will be LOGGED into the file 'react_3.log.htm'\n" ] } ], "source": [ "# Initialize the HTML logging (for the graphics)\n", "log_file = get_notebook_basename() + \".log.htm\" # Use the notebook base filename for the log file\n", "\n", "# Set up the use of some specified graphic (Vue) components\n", "GraphicLog.config(filename=log_file,\n", " components=[\"vue_cytoscape_1\"],\n", " extra_js=\"https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.21.2/cytoscape.umd.js\")" ] }, { "cell_type": "markdown", "id": "9329208b-070f-4902-8f37-0f11ddf75ed6", "metadata": {}, "source": [ "# Initialize the System\n", "Specify the chemicals and the reactions" ] }, { "cell_type": "code", "execution_count": 4, "id": "72b4245c-de4e-480d-a501-3495b7ed8bc4", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of reactions: 1 (at temp. 25 C)\n", "0: A + B <-> C (kF = 5 / kR = 2 / Delta_G = -2,271.45 / K = 2.5) | 1st order in all reactants & products\n" ] } ], "source": [ "# Specify the chemicals\n", "chem_data = chem(names=[\"A\", \"B\", \"C\"])\n", "\n", "# Reaction A + B <-> C , with 1st-order kinetics for each species\n", "chem_data.add_reaction(reactants=[\"A\" , \"B\"], products=[\"C\"],\n", " forward_rate=5., reverse_rate=2.)\n", "\n", "chem_data.describe_reactions()" ] }, { "cell_type": "code", "execution_count": 5, "id": "cb582868-431c-4022-aa0e-a2f554f80d6c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[GRAPHIC ELEMENT SENT TO LOG FILE `react_3.log.htm`]\n" ] } ], "source": [ "# Send a plot of the network of reactions to the HTML log file\n", "graph_data = chem_data.prepare_graph_network()\n", "GraphicLog.export_plot(graph_data, \"vue_cytoscape_1\")" ] }, { "cell_type": "markdown", "id": "98a9fbe5-2090-4d38-9c5f-94fbf7c3eae2", "metadata": {}, "source": [ "# Start the simulation" ] }, { "cell_type": "code", "execution_count": 6, "id": "c2f4a554-807b-49f9-8ca2-8d929fe6eeef", "metadata": {}, "outputs": [], "source": [ "dynamics = ReactionDynamics(chem_data=chem_data)" ] }, { "cell_type": "code", "execution_count": 7, "id": "ae304704-c8d9-4cef-9e0b-2587bb3909ef", "metadata": {}, "outputs": [], "source": [ "# Initial concentrations of all the chemicals, in index order\n", "dynamics.set_conc([10., 50., 20.], snapshot=True)" ] }, { "cell_type": "code", "execution_count": 8, "id": "a605dacf-2c67-403e-9aa9-5be25fc9f481", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "3 species:\n", " Species 0 (A). Conc: 10.0\n", " Species 1 (B). Conc: 50.0\n", " Species 2 (C). Conc: 20.0\n" ] } ], "source": [ "dynamics.describe_state()" ] }, { "cell_type": "code", "execution_count": 9, "id": "0ff2c242-a15b-456d-ad56-0ba1041c0b4c", "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", "
SYSTEM TIMEABCcaption
00.010.050.020.0Initial state
\n", "
" ], "text/plain": [ " SYSTEM TIME A B C caption\n", "0 0.0 10.0 50.0 20.0 Initial state" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_history()" ] }, { "cell_type": "markdown", "id": "fc516ca2-e62d-4784-b826-5372ff7f4c75", "metadata": { "tags": [] }, "source": [ "## Run the reaction" ] }, { "cell_type": "code", "execution_count": 10, "id": "2502cd11-0df9-4303-8895-98401a1df7b8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "* INFO: the tentative time step (0.004) leads to a least one norm value > its ABORT threshold:\n", " -> will backtrack, and re-do step with a SMALLER delta time, multiplied by 0.5 (set to 0.002) [Step started at t=0, and will rewind there]\n", "* INFO: the tentative time step (0.002) leads to a least one norm value > its ABORT threshold:\n", " -> will backtrack, and re-do step with a SMALLER delta time, multiplied by 0.5 (set to 0.001) [Step started at t=0, and will rewind there]\n", "* INFO: the tentative time step (0.001) leads to a least one norm value > its ABORT threshold:\n", " -> will backtrack, and re-do step with a SMALLER delta time, multiplied by 0.5 (set to 0.0005) [Step started at t=0, and will rewind there]\n", "Some steps were backtracked and re-done, to prevent negative concentrations or excessively large concentration changes\n", "39 total step(s) taken\n" ] } ], "source": [ "dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n", "\n", "# All of these settings are currently close to the default values... but subject to change; set for repeatability\n", "dynamics.set_thresholds(norm=\"norm_A\", low=0.5, high=0.8, abort=1.44)\n", "dynamics.set_thresholds(norm=\"norm_B\", low=0.08, high=0.5, abort=1.5)\n", "dynamics.set_step_factors(upshift=1.5, downshift=0.5, abort=0.5)\n", "dynamics.set_error_step_factor(0.5)\n", "\n", "dynamics.single_compartment_react(initial_step=0.004, reaction_duration=0.06,\n", " variable_steps=True, explain_variable_steps=False,\n", " snapshots={\"initial_caption\": \"1st reaction step\",\n", " \"final_caption\": \"last reaction step\"})" ] }, { "cell_type": "code", "execution_count": 11, "id": "80fbaee3-bd6f-4197-9270-23374d46a4a7", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \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 TIMEABCcaption
00.00000010.00000050.00000020.000000Initial state
10.0005008.77000048.77000021.2300001st reaction step
20.0010007.72194847.72194822.278052
30.0015006.82296046.82296023.177040
40.0020006.04745946.04745923.952541
50.0025005.37523645.37523624.624764
60.0030004.79010444.79010425.209896
70.0035004.27894144.27894125.721059
80.0040003.83099543.83099526.169005
90.0045003.43737343.43737326.562627
100.0050003.09065943.09065926.909341
110.0055002.78462242.78462227.215378
120.0060002.51399042.51399027.486010
130.0065002.27427742.27427727.725723
140.0070002.06164442.06164427.938356
150.0075001.87279241.87279228.127208
160.0080001.70487241.70487228.295128
170.0085001.55541341.55541328.444587
180.0090001.42226841.42226828.577732
190.0095001.30356241.30356228.696438
200.0100001.19765441.19765428.802346
210.0105001.10310541.10310528.896895
220.0112500.97642140.97642129.023579
230.0120000.86991840.86991829.130082
240.0127500.78028840.78028829.219712
250.0135000.70479140.70479129.295209
260.0142500.64115340.64115329.358847
270.0150000.58747640.58747629.412524
280.0157500.54217940.54217929.457821
290.0168750.48481640.48481629.515184
300.0180000.44081940.44081929.559181
310.0191250.40705040.40705029.592950
320.0208130.36814940.36814929.631851
330.0225000.34276340.34276329.657237
340.0250310.31789240.31789229.682108
350.0288280.29997340.29997329.700027
360.0345230.29402440.29402429.705976
370.0430660.29551840.29551829.704482
380.0558810.29383640.29383629.706164
390.0751030.29793940.29793929.702061last reaction step
\n", "
" ], "text/plain": [ " SYSTEM TIME A B C caption\n", "0 0.000000 10.000000 50.000000 20.000000 Initial state\n", "1 0.000500 8.770000 48.770000 21.230000 1st reaction step\n", "2 0.001000 7.721948 47.721948 22.278052 \n", "3 0.001500 6.822960 46.822960 23.177040 \n", "4 0.002000 6.047459 46.047459 23.952541 \n", "5 0.002500 5.375236 45.375236 24.624764 \n", "6 0.003000 4.790104 44.790104 25.209896 \n", "7 0.003500 4.278941 44.278941 25.721059 \n", "8 0.004000 3.830995 43.830995 26.169005 \n", "9 0.004500 3.437373 43.437373 26.562627 \n", "10 0.005000 3.090659 43.090659 26.909341 \n", "11 0.005500 2.784622 42.784622 27.215378 \n", "12 0.006000 2.513990 42.513990 27.486010 \n", "13 0.006500 2.274277 42.274277 27.725723 \n", "14 0.007000 2.061644 42.061644 27.938356 \n", "15 0.007500 1.872792 41.872792 28.127208 \n", "16 0.008000 1.704872 41.704872 28.295128 \n", "17 0.008500 1.555413 41.555413 28.444587 \n", "18 0.009000 1.422268 41.422268 28.577732 \n", "19 0.009500 1.303562 41.303562 28.696438 \n", "20 0.010000 1.197654 41.197654 28.802346 \n", "21 0.010500 1.103105 41.103105 28.896895 \n", "22 0.011250 0.976421 40.976421 29.023579 \n", "23 0.012000 0.869918 40.869918 29.130082 \n", "24 0.012750 0.780288 40.780288 29.219712 \n", "25 0.013500 0.704791 40.704791 29.295209 \n", "26 0.014250 0.641153 40.641153 29.358847 \n", "27 0.015000 0.587476 40.587476 29.412524 \n", "28 0.015750 0.542179 40.542179 29.457821 \n", "29 0.016875 0.484816 40.484816 29.515184 \n", "30 0.018000 0.440819 40.440819 29.559181 \n", "31 0.019125 0.407050 40.407050 29.592950 \n", "32 0.020813 0.368149 40.368149 29.631851 \n", "33 0.022500 0.342763 40.342763 29.657237 \n", "34 0.025031 0.317892 40.317892 29.682108 \n", "35 0.028828 0.299973 40.299973 29.700027 \n", "36 0.034523 0.294024 40.294024 29.705976 \n", "37 0.043066 0.295518 40.295518 29.704482 \n", "38 0.055881 0.293836 40.293836 29.706164 \n", "39 0.075103 0.297939 40.297939 29.702061 last reaction step" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_history()" ] }, { "cell_type": "markdown", "id": "b1366038-2dea-4d69-a655-ae464ca22922", "metadata": {}, "source": [ "## Note: \"A\" (now largely depleted) is the limiting reagent" ] }, { "cell_type": "code", "execution_count": 12, "id": "1598a75b-0322-45ac-bf2c-21fd09049966", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "From time 0 to 0.0105, in 21 steps of 0.0005\n", "From time 0.0105 to 0.01575, in 7 steps of 0.00075\n", "From time 0.01575 to 0.01913, in 3 steps of 0.00113\n", "From time 0.01913 to 0.0225, in 2 steps of 0.00169\n", "From time 0.0225 to 0.02503, in 1 step of 0.00253\n", "From time 0.02503 to 0.02883, in 1 step of 0.0038\n", "From time 0.02883 to 0.03452, in 1 step of 0.0057\n", "From time 0.03452 to 0.04307, in 1 step of 0.00854\n", "From time 0.04307 to 0.05588, in 1 step of 0.0128\n", "From time 0.05588 to 0.0751, in 1 step of 0.0192\n", "(39 steps total)\n" ] } ], "source": [ "dynamics.explain_time_advance()" ] }, { "cell_type": "markdown", "id": "9fb5f6b8-dde3-415d-9e90-b8d102bfd748", "metadata": {}, "source": [ "### Notice how the reaction proceeds in smaller steps in the early times, when the concentrations are changing much more rapidly.\n", "#### The argument argument _variable_steps=True_ dynamically adjusts the initial_step (which is initially found to be too large, leading to some backtracking" ] }, { "cell_type": "code", "execution_count": 13, "id": "226c1b6e-6838-46f3-aab1-9cb20c409724", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "x=%{x}
y=%{y}", "legendgroup": "", "line": { "color": "#636efa", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "", "orientation": "v", "showlegend": false, "type": "scatter", "x": [ 0, 0.010500000000000006, 0.010500000000000006, 0.01575000000000001, 0.01575000000000001, 0.019125000000000014, 0.019125000000000014, 0.022500000000000017, 0.022500000000000017, 0.02503125000000002, 0.02503125000000002, 0.02882812500000002, 0.02882812500000002, 0.03452343750000002, 0.03452343750000002, 0.04306640625000002, 0.04306640625000002, 0.05588085937500002, 0.05588085937500002, 0.07510253906250003 ], "xaxis": "x", "y": [ 0.0005000000000000004, 0.0005000000000000004, 0.0007500000000000007, 0.0007500000000000007, 0.001125000000000001, 0.001125000000000001, 0.0016875000000000015, 0.0016875000000000015, 0.0025312500000000022, 0.0025312500000000022, 0.0037968750000000016, 0.0037968750000000016, 0.005695312499999997, 0.005695312499999997, 0.008542968750000005, 0.008542968750000005, 0.012814453125, 0.012814453125, 0.019221679687500007, 0.019221679687500007 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "tracegroupgap": 0 }, "margin": { "t": 60 }, "shapes": [ { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0, "x1": 0, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0005, "x1": 0.0005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.001, "x1": 0.001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0015, "x1": 0.0015, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.002, "x1": 0.002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0025, "x1": 0.0025, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.003, "x1": 0.003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0035, "x1": 0.0035, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.004, "x1": 0.004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0045000000000000005, "x1": 0.0045000000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.005000000000000001, "x1": 0.005000000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.005500000000000001, "x1": 0.005500000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.006000000000000002, "x1": 0.006000000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.006500000000000002, "x1": 0.006500000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.007000000000000003, "x1": 0.007000000000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.007500000000000003, "x1": 0.007500000000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.008000000000000004, "x1": 0.008000000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.008500000000000004, "x1": 0.008500000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.009000000000000005, "x1": 0.009000000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.009500000000000005, "x1": 0.009500000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.010000000000000005, "x1": 0.010000000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.010500000000000006, "x1": 0.010500000000000006, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.011250000000000007, "x1": 0.011250000000000007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.012000000000000007, "x1": 0.012000000000000007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.012750000000000008, "x1": 0.012750000000000008, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.013500000000000009, "x1": 0.013500000000000009, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01425000000000001, "x1": 0.01425000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01500000000000001, "x1": 0.01500000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01575000000000001, "x1": 0.01575000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01687500000000001, "x1": 0.01687500000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.018000000000000013, "x1": 0.018000000000000013, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.019125000000000014, "x1": 0.019125000000000014, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.020812500000000015, "x1": 0.020812500000000015, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.022500000000000017, "x1": 0.022500000000000017, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.02503125000000002, "x1": 0.02503125000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.02882812500000002, "x1": 0.02882812500000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.03452343750000002, "x1": 0.03452343750000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.04306640625000002, "x1": 0.04306640625000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.05588085937500002, "x1": 0.05588085937500002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.07510253906250003, "x1": 0.07510253906250003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Simulation step sizes" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -4.459770728176961e-05, 0.0751471367697818 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.0005400933159722221, 0.02026177300347223 ], "title": { "text": "Step size" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_step_sizes(show_intervals=True)" ] }, { "cell_type": "markdown", "id": "6ac3dd4e-9dd0-4d3a-aa83-76102bd79524", "metadata": { "tags": [] }, "source": [ "## Plots of changes of concentration with time" ] }, { "cell_type": "code", "execution_count": 14, "id": "5f73e330-2d43-4cef-b2a0-c6eb379eea2e", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "A", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0005, 0.001, 0.0015, 0.002, 0.0025, 0.003, 0.0035, 0.004, 0.0045000000000000005, 0.005000000000000001, 0.005500000000000001, 0.006000000000000002, 0.006500000000000002, 0.007000000000000003, 0.007500000000000003, 0.008000000000000004, 0.008500000000000004, 0.009000000000000005, 0.009500000000000005, 0.010000000000000005, 0.010500000000000006, 0.011250000000000007, 0.012000000000000007, 0.012750000000000008, 0.013500000000000009, 0.01425000000000001, 0.01500000000000001, 0.01575000000000001, 0.01687500000000001, 0.018000000000000013, 0.019125000000000014, 0.020812500000000015, 0.022500000000000017, 0.02503125000000002, 0.02882812500000002, 0.03452343750000002, 0.04306640625000002, 0.05588085937500002, 0.07510253906250003 ], "xaxis": "x", "y": [ 10, 8.77, 7.72194775, 6.822959834615675, 6.047458939057545, 5.3752361871637655, 4.790104422090738, 4.27894112452324, 3.8309947280785526, 3.4373729590262045, 3.0906594580159465, 2.7846224130427775, 2.5139902443674065, 2.274276862314362, 2.0616440611044653, 1.872792070346196, 1.704871695894351, 1.5554131858603673, 1.4222681786415994, 1.3035619756688566, 1.1976540315652777, 1.1031050364288733, 0.9764214707046686, 0.8699183720612123, 0.7802878962912525, 0.7047910954990079, 0.641152505199803, 0.5874763636560679, 0.542179462770219, 0.48481566290028155, 0.44081916847935443, 0.4070499537838652, 0.36814879424040353, 0.3427625098046691, 0.31789182007449174, 0.2999727582082435, 0.29402448591811875, 0.29551781268525235, 0.2938358894366579, 0.297938808560594 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "B", "line": { "color": "violet", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0005, 0.001, 0.0015, 0.002, 0.0025, 0.003, 0.0035, 0.004, 0.0045000000000000005, 0.005000000000000001, 0.005500000000000001, 0.006000000000000002, 0.006500000000000002, 0.007000000000000003, 0.007500000000000003, 0.008000000000000004, 0.008500000000000004, 0.009000000000000005, 0.009500000000000005, 0.010000000000000005, 0.010500000000000006, 0.011250000000000007, 0.012000000000000007, 0.012750000000000008, 0.013500000000000009, 0.01425000000000001, 0.01500000000000001, 0.01575000000000001, 0.01687500000000001, 0.018000000000000013, 0.019125000000000014, 0.020812500000000015, 0.022500000000000017, 0.02503125000000002, 0.02882812500000002, 0.03452343750000002, 0.04306640625000002, 0.05588085937500002, 0.07510253906250003 ], "xaxis": "x", "y": [ 50, 48.77, 47.721947750000005, 46.82295983461568, 46.04745893905755, 45.37523618716377, 44.79010442209074, 44.27894112452324, 43.83099472807856, 43.43737295902621, 43.090659458015956, 42.78462241304279, 42.51399024436742, 42.27427686231437, 42.061644061104474, 41.87279207034621, 41.70487169589436, 41.55541318586038, 41.422268178641616, 41.30356197566887, 41.19765403156529, 41.103105036428886, 40.97642147070468, 40.86991837206122, 40.78028789629126, 40.70479109549902, 40.64115250519981, 40.58747636365608, 40.54217946277023, 40.48481566290029, 40.440819168479365, 40.407049953783876, 40.36814879424041, 40.34276250980468, 40.3178918200745, 40.29997275820825, 40.29402448591812, 40.295517812685254, 40.29383588943666, 40.297938808560595 ], "yaxis": "y" }, { "hovertemplate": "Chemical=C
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "C", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "C", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0005, 0.001, 0.0015, 0.002, 0.0025, 0.003, 0.0035, 0.004, 0.0045000000000000005, 0.005000000000000001, 0.005500000000000001, 0.006000000000000002, 0.006500000000000002, 0.007000000000000003, 0.007500000000000003, 0.008000000000000004, 0.008500000000000004, 0.009000000000000005, 0.009500000000000005, 0.010000000000000005, 0.010500000000000006, 0.011250000000000007, 0.012000000000000007, 0.012750000000000008, 0.013500000000000009, 0.01425000000000001, 0.01500000000000001, 0.01575000000000001, 0.01687500000000001, 0.018000000000000013, 0.019125000000000014, 0.020812500000000015, 0.022500000000000017, 0.02503125000000002, 0.02882812500000002, 0.03452343750000002, 0.04306640625000002, 0.05588085937500002, 0.07510253906250003 ], "xaxis": "x", "y": [ 20, 21.23, 22.278052250000002, 23.177040165384327, 23.95254106094246, 24.62476381283624, 25.209895577909265, 25.721058875476764, 26.169005271921453, 26.5626270409738, 26.909340541984058, 27.215377586957228, 27.486009755632598, 27.72572313768564, 27.938355938895537, 28.127207929653807, 28.295128304105653, 28.444586814139637, 28.577731821358405, 28.696438024331147, 28.802345968434725, 28.89689496357113, 29.02357852929533, 29.13008162793879, 29.219712103708748, 29.295208904500992, 29.358847494800198, 29.412523636343934, 29.457820537229782, 29.51518433709972, 29.559180831520646, 29.592950046216135, 29.631851205759595, 29.657237490195328, 29.682108179925507, 29.700027241791755, 29.705975514081878, 29.704482187314746, 29.70616411056334, 29.7020611914394 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "shapes": [ { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0, "x1": 0, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0005, "x1": 0.0005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.001, "x1": 0.001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0015, "x1": 0.0015, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.002, "x1": 0.002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0025, "x1": 0.0025, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.003, "x1": 0.003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0035, "x1": 0.0035, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.004, "x1": 0.004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.0045000000000000005, "x1": 0.0045000000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.005000000000000001, "x1": 0.005000000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.005500000000000001, "x1": 0.005500000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.006000000000000002, "x1": 0.006000000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.006500000000000002, "x1": 0.006500000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.007000000000000003, "x1": 0.007000000000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.007500000000000003, "x1": 0.007500000000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.008000000000000004, "x1": 0.008000000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.008500000000000004, "x1": 0.008500000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.009000000000000005, "x1": 0.009000000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.009500000000000005, "x1": 0.009500000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.010000000000000005, "x1": 0.010000000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.010500000000000006, "x1": 0.010500000000000006, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.011250000000000007, "x1": 0.011250000000000007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.012000000000000007, "x1": 0.012000000000000007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.012750000000000008, "x1": 0.012750000000000008, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.013500000000000009, "x1": 0.013500000000000009, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01425000000000001, "x1": 0.01425000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01500000000000001, "x1": 0.01500000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01575000000000001, "x1": 0.01575000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.01687500000000001, "x1": 0.01687500000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.018000000000000013, "x1": 0.018000000000000013, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.019125000000000014, "x1": 0.019125000000000014, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.020812500000000015, "x1": 0.020812500000000015, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.022500000000000017, "x1": 0.022500000000000017, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.02503125000000002, "x1": 0.02503125000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.02882812500000002, "x1": 0.02882812500000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.03452343750000002, "x1": 0.03452343750000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.04306640625000002, "x1": 0.04306640625000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.05588085937500002, "x1": 0.05588085937500002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.07510253906250003, "x1": 0.07510253906250003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction `A + B <-> C` . Changes in concentrations with time (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -4.551669034090911e-05, 0.07514805575284093 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -2.4676176722613055, 52.76145356169796 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+sAAAFoCAYAAAAvu2oWAAAAAXNSR0IArs4c6QAAIABJREFUeF7snQm4FNWZ/t/uu1/2C7LJIoiybypINKKjMlESl8FRIWBQFBB13PjLIFkcM0lkdFSSGBUZCCYuBJVEZREEvAIiKIqKwSUiQdkFLvfC3Zf+P6ebaqr7VnWf2qtuv+3jA3Sf851Tv++rU/XWOeerUCQSiYAfEiABEiABEiABEiABEiABEiABEiAB3xAIUaz7xhfsCAmQAAmQAAmQAAmQAAmQAAmQAAlECVCsMxBIgARIgARIgARIgARIgARIgARIwGcEKNZ95hB2hwRIgARIgARIgARIgARIgARIgAQo1hkDJEACJEACJEACJEACJEACJEACJOAzAhTrPnMIu0MCJEACJEACJEACJEACJEACJEACFOuMARIgARIgARIgARIgARIgARIgARLwGQGKdZ85hN0hARIgARIgARIgARIgARIgARIgAYp1xgAJkAAJkAAJkAAJkAAJkAAJkAAJ+IwAxbrPHMLukAAJkAAJkAAJkAAJkAAJkAAJkADFOmOABEiABEiABEiABEiABEiABEiABHxGgGLdZw5hd0iABEiABEiABEiABEiABEiABEiAYp0xQAIkQAIkQAIkQAIkQAIkQAIkQAI+I0Cx7jOHsDskQAIkQAIkQAIkQAIkQAIkQAIkQLHOGCABEiABEiABEiABEiABEiABEiABnxGgWPeZQ9gdEiABEiABEiABEiABEiABEiABEqBYZwyQAAmQAAmQAAmQAAmQAAmQAAmQgM8IUKz7zCHsDgmQAAmQAAmQAAmQAAmQAAmQAAlQrDMGSIAESIAESIAESIAESIAESIAESMBnBCjWfeYQdocESIAESIAESIAESIAESIAESIAEKNYZAyRAAiRAAiRAAiRAAiRAAiRAAiTgMwIU6z5zCLtDAiRAAiRAAiRAAiRAAiRAAiRAAhTrjAESIAESIAESIAESIAESIAESIAES8BkBinWfOYTdIQESIAESIAESIAESIAESIAESIAGKdcYACZAACZAACZAACZAACZAACZAACfiMAMW6zxzC7pAACZAACZAACZAACZAACZAACZAAxTpjgARIgARIgARIgARIgARIgARIgAR8RoBi3WcOYXdIgARIgARIgARIgARIgARIgARIgGKd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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_curves(colors=['red', 'violet', 'green'], show_intervals=True)" ] }, { "cell_type": "markdown", "id": "c02a8f55-a671-4771-86c9-fc4d1b126bf8", "metadata": {}, "source": [ "### Check the final equilibrium" ] }, { "cell_type": "code", "execution_count": 15, "id": "765f6f39-4b2e-4a86-b6a9-ace9d1941663", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0: A + B <-> C\n", "Final concentrations: [C] = 29.7 ; [A] = 0.2979 ; [B] = 40.3\n", "1. Ratio of reactant/product concentrations, adjusted for reaction orders: 2.47387\n", " Formula used: [C] / ([A][B])\n", "2. Ratio of forward/reverse reaction rates: 2.5\n", "Discrepancy between the two values: 1.045 %\n", "Reaction IS in equilibrium (within 2% tolerance)\n", "\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Verify that the reaction has reached equilibrium\n", "dynamics.is_in_equilibrium(tolerance=2)" ] }, { "cell_type": "code", "execution_count": null, "id": "fcc82495-c952-4200-b316-157aac1ef22f", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "5c747824-a170-439e-96a5-dd35bc81e08b", "metadata": {}, "source": [ "# Everthing below is just for diagnostic insight \n", "### into the adaptive variable time steps" ] }, { "cell_type": "code", "execution_count": 16, "id": "06c8c7e9-edd9-45e1-b4a0-508f0b379c42", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
START_TIMEDelta ADelta BDelta Cnorm_Anorm_Bactionstep_factortime_stepcaption
00.000000-9.840000-9.8400009.8400003.227520e+01NaNABORT0.50.004000excessive norm value(s)
10.000000-4.920000-4.9200004.9200008.068800e+00NaNABORT0.50.002000excessive norm value(s)
20.000000-2.460000-2.4600002.4600002.017200e+00NaNABORT0.50.001000excessive norm value(s)
30.000000-1.230000-1.2300001.2300005.043000e-010.123000OK (stay)1.00.000500
40.000500-1.048052-1.0480521.0480523.661378e-010.119504OK (stay)1.00.000500
50.001000-0.898988-0.8989880.8989882.693931e-010.116420OK (stay)1.00.000500
60.001500-0.775501-0.7755010.7755012.004672e-010.113660OK (stay)1.00.000500
70.002000-0.672223-0.6722230.6722231.506278e-010.111158OK (stay)1.00.000500
80.002500-0.585132-0.5851320.5851321.141264e-010.108857OK (stay)1.00.000500
90.003000-0.511163-0.5111630.5111638.709597e-020.106712OK (stay)1.00.000500
100.003500-0.447946-0.4479460.4479466.688532e-020.104686OK (stay)1.00.000500
110.004000-0.393622-0.3936220.3936225.164603e-020.102747OK (stay)1.00.000500
120.004500-0.346714-0.3467140.3467144.007008e-020.100866OK (stay)1.00.000500
130.005000-0.306037-0.3060370.3060373.121956e-020.099020OK (stay)1.00.000500
140.005500-0.270632-0.2706320.2706322.441392e-020.097188OK (stay)1.00.000500
150.006000-0.239713-0.2397130.2397131.915417e-020.095352OK (stay)1.00.000500
160.006500-0.212633-0.2126330.2126331.507090e-020.093495OK (stay)1.00.000500
170.007000-0.188852-0.1888520.1888521.188836e-020.091603OK (stay)1.00.000500
180.007500-0.167920-0.1679200.1679209.399084e-030.089663OK (stay)1.00.000500
190.008000-0.149459-0.1494590.1494597.445949e-030.087666OK (stay)1.00.000500
200.008500-0.133145-0.1331450.1331455.909198e-030.085601OK (stay)1.00.000500
210.009000-0.118706-0.1187060.1187064.697054e-030.083463OK (stay)1.00.000500
220.009500-0.105908-0.1059080.1059083.738831e-030.081245OK (stay)1.00.000500
230.010000-0.094549-0.0945490.0945492.979837e-030.078945OK (low)1.50.000500
240.010500-0.126684-0.1266840.1266845.349575e-030.114843OK (stay)1.00.000750
250.011250-0.106503-0.1065030.1065033.780970e-030.109075OK (stay)1.00.000750
260.012000-0.089630-0.0896300.0896302.677874e-030.103033OK (stay)1.00.000750
270.012750-0.075497-0.0754970.0754971.899922e-030.096755OK (stay)1.00.000750
280.013500-0.063639-0.0636390.0636391.349957e-030.090294OK (stay)1.00.000750
290.014250-0.053676-0.0536760.0536769.603761e-040.083718OK (stay)1.00.000750
300.015000-0.045297-0.0452970.0452976.839364e-040.077104OK (low)1.50.000750
310.015750-0.057364-0.0573640.0573641.096869e-030.105802OK (stay)1.00.001125
320.016875-0.043996-0.0439960.0439966.452305e-040.090749OK (stay)1.00.001125
330.018000-0.033769-0.0337690.0337693.801200e-040.076606OK (low)1.50.001125
340.019125-0.038901-0.0389010.0389015.044334e-040.095569OK (stay)1.00.001688
350.020813-0.025386-0.0253860.0253862.148211e-040.068957OK (low)1.50.001688
360.022500-0.024871-0.0248710.0248712.061837e-040.072560OK (low)1.50.002531
370.025031-0.017919-0.0179190.0179191.070309e-040.056368OK (low)1.50.003797
380.028828-0.005948-0.0059480.0059481.179398e-050.019829OK (low)1.50.005695
390.0345230.0014930.001493-0.0014937.433416e-070.005079OK (low)1.50.008543
400.043066-0.001682-0.0016820.0016829.429553e-070.005691OK (low)1.50.012814
410.0558810.0041030.004103-0.0041035.611315e-060.013963OK (low)1.50.019222
\n", "
" ], "text/plain": [ " START_TIME Delta A Delta B Delta C norm_A norm_B \\\n", "0 0.000000 -9.840000 -9.840000 9.840000 3.227520e+01 NaN \n", "1 0.000000 -4.920000 -4.920000 4.920000 8.068800e+00 NaN \n", "2 0.000000 -2.460000 -2.460000 2.460000 2.017200e+00 NaN \n", "3 0.000000 -1.230000 -1.230000 1.230000 5.043000e-01 0.123000 \n", "4 0.000500 -1.048052 -1.048052 1.048052 3.661378e-01 0.119504 \n", "5 0.001000 -0.898988 -0.898988 0.898988 2.693931e-01 0.116420 \n", "6 0.001500 -0.775501 -0.775501 0.775501 2.004672e-01 0.113660 \n", "7 0.002000 -0.672223 -0.672223 0.672223 1.506278e-01 0.111158 \n", "8 0.002500 -0.585132 -0.585132 0.585132 1.141264e-01 0.108857 \n", "9 0.003000 -0.511163 -0.511163 0.511163 8.709597e-02 0.106712 \n", "10 0.003500 -0.447946 -0.447946 0.447946 6.688532e-02 0.104686 \n", "11 0.004000 -0.393622 -0.393622 0.393622 5.164603e-02 0.102747 \n", "12 0.004500 -0.346714 -0.346714 0.346714 4.007008e-02 0.100866 \n", "13 0.005000 -0.306037 -0.306037 0.306037 3.121956e-02 0.099020 \n", "14 0.005500 -0.270632 -0.270632 0.270632 2.441392e-02 0.097188 \n", "15 0.006000 -0.239713 -0.239713 0.239713 1.915417e-02 0.095352 \n", "16 0.006500 -0.212633 -0.212633 0.212633 1.507090e-02 0.093495 \n", "17 0.007000 -0.188852 -0.188852 0.188852 1.188836e-02 0.091603 \n", "18 0.007500 -0.167920 -0.167920 0.167920 9.399084e-03 0.089663 \n", "19 0.008000 -0.149459 -0.149459 0.149459 7.445949e-03 0.087666 \n", "20 0.008500 -0.133145 -0.133145 0.133145 5.909198e-03 0.085601 \n", "21 0.009000 -0.118706 -0.118706 0.118706 4.697054e-03 0.083463 \n", "22 0.009500 -0.105908 -0.105908 0.105908 3.738831e-03 0.081245 \n", "23 0.010000 -0.094549 -0.094549 0.094549 2.979837e-03 0.078945 \n", "24 0.010500 -0.126684 -0.126684 0.126684 5.349575e-03 0.114843 \n", "25 0.011250 -0.106503 -0.106503 0.106503 3.780970e-03 0.109075 \n", "26 0.012000 -0.089630 -0.089630 0.089630 2.677874e-03 0.103033 \n", "27 0.012750 -0.075497 -0.075497 0.075497 1.899922e-03 0.096755 \n", "28 0.013500 -0.063639 -0.063639 0.063639 1.349957e-03 0.090294 \n", "29 0.014250 -0.053676 -0.053676 0.053676 9.603761e-04 0.083718 \n", "30 0.015000 -0.045297 -0.045297 0.045297 6.839364e-04 0.077104 \n", "31 0.015750 -0.057364 -0.057364 0.057364 1.096869e-03 0.105802 \n", "32 0.016875 -0.043996 -0.043996 0.043996 6.452305e-04 0.090749 \n", "33 0.018000 -0.033769 -0.033769 0.033769 3.801200e-04 0.076606 \n", "34 0.019125 -0.038901 -0.038901 0.038901 5.044334e-04 0.095569 \n", "35 0.020813 -0.025386 -0.025386 0.025386 2.148211e-04 0.068957 \n", "36 0.022500 -0.024871 -0.024871 0.024871 2.061837e-04 0.072560 \n", "37 0.025031 -0.017919 -0.017919 0.017919 1.070309e-04 0.056368 \n", "38 0.028828 -0.005948 -0.005948 0.005948 1.179398e-05 0.019829 \n", "39 0.034523 0.001493 0.001493 -0.001493 7.433416e-07 0.005079 \n", "40 0.043066 -0.001682 -0.001682 0.001682 9.429553e-07 0.005691 \n", "41 0.055881 0.004103 0.004103 -0.004103 5.611315e-06 0.013963 \n", "\n", " action step_factor time_step caption \n", "0 ABORT 0.5 0.004000 excessive norm value(s) \n", "1 ABORT 0.5 0.002000 excessive norm value(s) \n", "2 ABORT 0.5 0.001000 excessive norm value(s) \n", "3 OK (stay) 1.0 0.000500 \n", "4 OK (stay) 1.0 0.000500 \n", "5 OK (stay) 1.0 0.000500 \n", "6 OK (stay) 1.0 0.000500 \n", "7 OK (stay) 1.0 0.000500 \n", "8 OK (stay) 1.0 0.000500 \n", "9 OK (stay) 1.0 0.000500 \n", "10 OK (stay) 1.0 0.000500 \n", "11 OK (stay) 1.0 0.000500 \n", "12 OK (stay) 1.0 0.000500 \n", "13 OK (stay) 1.0 0.000500 \n", "14 OK (stay) 1.0 0.000500 \n", "15 OK (stay) 1.0 0.000500 \n", "16 OK (stay) 1.0 0.000500 \n", "17 OK (stay) 1.0 0.000500 \n", "18 OK (stay) 1.0 0.000500 \n", "19 OK (stay) 1.0 0.000500 \n", "20 OK (stay) 1.0 0.000500 \n", "21 OK (stay) 1.0 0.000500 \n", "22 OK (stay) 1.0 0.000500 \n", "23 OK (low) 1.5 0.000500 \n", "24 OK (stay) 1.0 0.000750 \n", "25 OK (stay) 1.0 0.000750 \n", "26 OK (stay) 1.0 0.000750 \n", "27 OK (stay) 1.0 0.000750 \n", "28 OK (stay) 1.0 0.000750 \n", "29 OK (stay) 1.0 0.000750 \n", "30 OK (low) 1.5 0.000750 \n", "31 OK (stay) 1.0 0.001125 \n", "32 OK (stay) 1.0 0.001125 \n", "33 OK (low) 1.5 0.001125 \n", "34 OK (stay) 1.0 0.001688 \n", "35 OK (low) 1.5 0.001688 \n", "36 OK (low) 1.5 0.002531 \n", "37 OK (low) 1.5 0.003797 \n", "38 OK (low) 1.5 0.005695 \n", "39 OK (low) 1.5 0.008543 \n", "40 OK (low) 1.5 0.012814 \n", "41 OK (low) 1.5 0.019222 " ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_decisions_data()" ] }, { "cell_type": "code", "execution_count": 17, "id": "4e3012c6-c870-411c-bb80-7e1076233ca3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: A + B <-> C\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
START_TIMEDelta ADelta BDelta Ctime_stepcaption
00.000000-9.840000-9.8400009.8400000.004000aborted: excessive norm value(s)
10.000000-4.920000-4.9200004.9200000.002000aborted: excessive norm value(s)
20.000000-2.460000-2.4600002.4600000.001000aborted: excessive norm value(s)
30.000000-1.230000-1.2300001.2300000.000500
40.000500-1.048052-1.0480521.0480520.000500
50.001000-0.898988-0.8989880.8989880.000500
60.001500-0.775501-0.7755010.7755010.000500
70.002000-0.672223-0.6722230.6722230.000500
80.002500-0.585132-0.5851320.5851320.000500
90.003000-0.511163-0.5111630.5111630.000500
100.003500-0.447946-0.4479460.4479460.000500
110.004000-0.393622-0.3936220.3936220.000500
120.004500-0.346714-0.3467140.3467140.000500
130.005000-0.306037-0.3060370.3060370.000500
140.005500-0.270632-0.2706320.2706320.000500
150.006000-0.239713-0.2397130.2397130.000500
160.006500-0.212633-0.2126330.2126330.000500
170.007000-0.188852-0.1888520.1888520.000500
180.007500-0.167920-0.1679200.1679200.000500
190.008000-0.149459-0.1494590.1494590.000500
200.008500-0.133145-0.1331450.1331450.000500
210.009000-0.118706-0.1187060.1187060.000500
220.009500-0.105908-0.1059080.1059080.000500
230.010000-0.094549-0.0945490.0945490.000500
240.010500-0.126684-0.1266840.1266840.000750
250.011250-0.106503-0.1065030.1065030.000750
260.012000-0.089630-0.0896300.0896300.000750
270.012750-0.075497-0.0754970.0754970.000750
280.013500-0.063639-0.0636390.0636390.000750
290.014250-0.053676-0.0536760.0536760.000750
300.015000-0.045297-0.0452970.0452970.000750
310.015750-0.057364-0.0573640.0573640.001125
320.016875-0.043996-0.0439960.0439960.001125
330.018000-0.033769-0.0337690.0337690.001125
340.019125-0.038901-0.0389010.0389010.001688
350.020813-0.025386-0.0253860.0253860.001688
360.022500-0.024871-0.0248710.0248710.002531
370.025031-0.017919-0.0179190.0179190.003797
380.028828-0.005948-0.0059480.0059480.005695
390.0345230.0014930.001493-0.0014930.008543
400.043066-0.001682-0.0016820.0016820.012814
410.0558810.0041030.004103-0.0041030.019222
\n", "
" ], "text/plain": [ " START_TIME Delta A Delta B Delta C time_step \\\n", "0 0.000000 -9.840000 -9.840000 9.840000 0.004000 \n", "1 0.000000 -4.920000 -4.920000 4.920000 0.002000 \n", "2 0.000000 -2.460000 -2.460000 2.460000 0.001000 \n", "3 0.000000 -1.230000 -1.230000 1.230000 0.000500 \n", "4 0.000500 -1.048052 -1.048052 1.048052 0.000500 \n", "5 0.001000 -0.898988 -0.898988 0.898988 0.000500 \n", "6 0.001500 -0.775501 -0.775501 0.775501 0.000500 \n", "7 0.002000 -0.672223 -0.672223 0.672223 0.000500 \n", "8 0.002500 -0.585132 -0.585132 0.585132 0.000500 \n", "9 0.003000 -0.511163 -0.511163 0.511163 0.000500 \n", "10 0.003500 -0.447946 -0.447946 0.447946 0.000500 \n", "11 0.004000 -0.393622 -0.393622 0.393622 0.000500 \n", "12 0.004500 -0.346714 -0.346714 0.346714 0.000500 \n", "13 0.005000 -0.306037 -0.306037 0.306037 0.000500 \n", "14 0.005500 -0.270632 -0.270632 0.270632 0.000500 \n", "15 0.006000 -0.239713 -0.239713 0.239713 0.000500 \n", "16 0.006500 -0.212633 -0.212633 0.212633 0.000500 \n", "17 0.007000 -0.188852 -0.188852 0.188852 0.000500 \n", "18 0.007500 -0.167920 -0.167920 0.167920 0.000500 \n", "19 0.008000 -0.149459 -0.149459 0.149459 0.000500 \n", "20 0.008500 -0.133145 -0.133145 0.133145 0.000500 \n", "21 0.009000 -0.118706 -0.118706 0.118706 0.000500 \n", "22 0.009500 -0.105908 -0.105908 0.105908 0.000500 \n", "23 0.010000 -0.094549 -0.094549 0.094549 0.000500 \n", "24 0.010500 -0.126684 -0.126684 0.126684 0.000750 \n", "25 0.011250 -0.106503 -0.106503 0.106503 0.000750 \n", "26 0.012000 -0.089630 -0.089630 0.089630 0.000750 \n", "27 0.012750 -0.075497 -0.075497 0.075497 0.000750 \n", "28 0.013500 -0.063639 -0.063639 0.063639 0.000750 \n", "29 0.014250 -0.053676 -0.053676 0.053676 0.000750 \n", "30 0.015000 -0.045297 -0.045297 0.045297 0.000750 \n", "31 0.015750 -0.057364 -0.057364 0.057364 0.001125 \n", "32 0.016875 -0.043996 -0.043996 0.043996 0.001125 \n", "33 0.018000 -0.033769 -0.033769 0.033769 0.001125 \n", "34 0.019125 -0.038901 -0.038901 0.038901 0.001688 \n", "35 0.020813 -0.025386 -0.025386 0.025386 0.001688 \n", "36 0.022500 -0.024871 -0.024871 0.024871 0.002531 \n", "37 0.025031 -0.017919 -0.017919 0.017919 0.003797 \n", "38 0.028828 -0.005948 -0.005948 0.005948 0.005695 \n", "39 0.034523 0.001493 0.001493 -0.001493 0.008543 \n", "40 0.043066 -0.001682 -0.001682 0.001682 0.012814 \n", "41 0.055881 0.004103 0.004103 -0.004103 0.019222 \n", "\n", " caption \n", "0 aborted: excessive norm value(s) \n", "1 aborted: excessive norm value(s) \n", "2 aborted: excessive norm value(s) \n", "3 \n", "4 \n", "5 \n", "6 \n", "7 \n", "8 \n", "9 \n", "10 \n", "11 \n", "12 \n", "13 \n", "14 \n", "15 \n", "16 \n", "17 \n", "18 \n", "19 \n", "20 \n", "21 \n", "22 \n", "23 \n", "24 \n", "25 \n", "26 \n", "27 \n", "28 \n", "29 \n", "30 \n", "31 \n", "32 \n", "33 \n", "34 \n", "35 \n", "36 \n", "37 \n", "38 \n", "39 \n", "40 \n", "41 " ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_rxn_data(rxn_index=0)" ] }, { "cell_type": "code", "execution_count": 18, "id": "a5cee533-a63c-4ff8-9427-e9b64cf4885a", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
TIMEABCcaption
00.00000010.00000050.00000020.000000
10.0005008.77000048.77000021.230000
20.0010007.72194847.72194822.278052
30.0015006.82296046.82296023.177040
40.0020006.04745946.04745923.952541
50.0025005.37523645.37523624.624764
60.0030004.79010444.79010425.209896
70.0035004.27894144.27894125.721059
80.0040003.83099543.83099526.169005
90.0045003.43737343.43737326.562627
100.0050003.09065943.09065926.909341
110.0055002.78462242.78462227.215378
120.0060002.51399042.51399027.486010
130.0065002.27427742.27427727.725723
140.0070002.06164442.06164427.938356
150.0075001.87279241.87279228.127208
160.0080001.70487241.70487228.295128
170.0085001.55541341.55541328.444587
180.0090001.42226841.42226828.577732
190.0095001.30356241.30356228.696438
200.0100001.19765441.19765428.802346
210.0105001.10310541.10310528.896895
220.0112500.97642140.97642129.023579
230.0120000.86991840.86991829.130082
240.0127500.78028840.78028829.219712
250.0135000.70479140.70479129.295209
260.0142500.64115340.64115329.358847
270.0150000.58747640.58747629.412524
280.0157500.54217940.54217929.457821
290.0168750.48481640.48481629.515184
300.0180000.44081940.44081929.559181
310.0191250.40705040.40705029.592950
320.0208130.36814940.36814929.631851
330.0225000.34276340.34276329.657237
340.0250310.31789240.31789229.682108
350.0288280.29997340.29997329.700027
360.0345230.29402440.29402429.705976
370.0430660.29551840.29551829.704482
380.0558810.29383640.29383629.706164
390.0751030.29793940.29793929.702061
\n", "
" ], "text/plain": [ " TIME A B C caption\n", "0 0.000000 10.000000 50.000000 20.000000 \n", "1 0.000500 8.770000 48.770000 21.230000 \n", "2 0.001000 7.721948 47.721948 22.278052 \n", "3 0.001500 6.822960 46.822960 23.177040 \n", "4 0.002000 6.047459 46.047459 23.952541 \n", "5 0.002500 5.375236 45.375236 24.624764 \n", "6 0.003000 4.790104 44.790104 25.209896 \n", "7 0.003500 4.278941 44.278941 25.721059 \n", "8 0.004000 3.830995 43.830995 26.169005 \n", "9 0.004500 3.437373 43.437373 26.562627 \n", "10 0.005000 3.090659 43.090659 26.909341 \n", "11 0.005500 2.784622 42.784622 27.215378 \n", "12 0.006000 2.513990 42.513990 27.486010 \n", "13 0.006500 2.274277 42.274277 27.725723 \n", "14 0.007000 2.061644 42.061644 27.938356 \n", "15 0.007500 1.872792 41.872792 28.127208 \n", "16 0.008000 1.704872 41.704872 28.295128 \n", "17 0.008500 1.555413 41.555413 28.444587 \n", "18 0.009000 1.422268 41.422268 28.577732 \n", "19 0.009500 1.303562 41.303562 28.696438 \n", "20 0.010000 1.197654 41.197654 28.802346 \n", "21 0.010500 1.103105 41.103105 28.896895 \n", "22 0.011250 0.976421 40.976421 29.023579 \n", "23 0.012000 0.869918 40.869918 29.130082 \n", "24 0.012750 0.780288 40.780288 29.219712 \n", "25 0.013500 0.704791 40.704791 29.295209 \n", "26 0.014250 0.641153 40.641153 29.358847 \n", "27 0.015000 0.587476 40.587476 29.412524 \n", "28 0.015750 0.542179 40.542179 29.457821 \n", "29 0.016875 0.484816 40.484816 29.515184 \n", "30 0.018000 0.440819 40.440819 29.559181 \n", "31 0.019125 0.407050 40.407050 29.592950 \n", "32 0.020813 0.368149 40.368149 29.631851 \n", "33 0.022500 0.342763 40.342763 29.657237 \n", "34 0.025031 0.317892 40.317892 29.682108 \n", "35 0.028828 0.299973 40.299973 29.700027 \n", "36 0.034523 0.294024 40.294024 29.705976 \n", "37 0.043066 0.295518 40.295518 29.704482 \n", "38 0.055881 0.293836 40.293836 29.706164 \n", "39 0.075103 0.297939 40.297939 29.702061 " ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_conc_data()" ] }, { "cell_type": "code", "execution_count": null, "id": "1918451d", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }