{ "cells": [ { "cell_type": "markdown", "id": "5cbc8640", "metadata": {}, "source": [ "### A MINIMALIST, \"get-started\", demonstration for the reaction `A <-> B`,\n", "with 1st-order kinetics in both directions, taken to equilibrium.\n", "\n", "**\"No frills!\"** For advanced graphics, analysis, diagnostics, fine-tuning, etc, please see other experiments." ] }, { "cell_type": "code", "execution_count": 1, "id": "97a57e9a-039b-479a-81dc-81399e22743a", "metadata": {}, "outputs": [], "source": [ "LAST_REVISED = \"July 24, 2024\"\n", "LIFE123_VERSION = \"1.0.0.beta.37\" # Version this experiment is based on" ] }, { "cell_type": "code", "execution_count": null, "id": "b5b8a8b0-d417-4432-b6a8-c196af57b105", "metadata": {}, "outputs": [], "source": [ "#import set_path # Using MyBinder? Uncomment this before running the next cell!" ] }, { "cell_type": "code", "execution_count": 2, "id": "a29db1c7", "metadata": { "tags": [] }, "outputs": [], "source": [ "#import sys\n", "#sys.path.append(\"C:/some_path/my_env_or_install\") # CHANGE to the folder containing your venv or libraries installation!\n", "# NOTE: If any of the imports below can't find a module, uncomment the lines above, or try: import set_path\n", "\n", "import life123" ] }, { "cell_type": "code", "execution_count": 3, "id": "ccd6701b-ae96-4d20-b537-40c2c40df9aa", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "OK\n" ] } ], "source": [ "life123.check_version(LIFE123_VERSION)" ] }, { "cell_type": "code", "execution_count": null, "id": "ac9eea69-174c-43e5-9eed-443cbc5e2ba7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "e0529a0c", "metadata": {}, "source": [ "## Initialize the System" ] }, { "cell_type": "code", "execution_count": 4, "id": "78077d8c", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of reactions: 1 (at temp. 25 C)\n", "0: A <-> B (kF = 3 / kR = 2 / delta_G = -1,005.1 / K = 1.5) | 1st order in all reactants & products\n", "Set of chemicals involved in the above reactions: {'A', 'B'}\n" ] } ], "source": [ "# Instantiate the simulator and specify the chemicals\n", "dynamics = life123.UniformCompartment(names=[\"A\", \"B\"]) \n", "\n", "# Reaction A <-> B , with 1st-order kinetics in both directions\n", "dynamics.add_reaction(reactants=\"A\", products=\"B\", \n", " forward_rate=3., reverse_rate=2.)\n", "\n", "dynamics.describe_reactions()" ] }, { "cell_type": "code", "execution_count": 5, "id": "9fc3948d", "metadata": {}, "outputs": [], "source": [ "# Set the initial concentrations of all the chemicals\n", "dynamics.set_conc({\"A\": 80., \"B\": 10.})" ] }, { "cell_type": "markdown", "id": "987af2c5", "metadata": { "tags": [] }, "source": [ "## Run the reaction" ] }, { "cell_type": "code", "execution_count": 6, "id": "43735178-313b-48cf-a583-5181238feac3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Some steps were backtracked and re-done, to prevent negative concentrations or excessively large concentration changes\n", "47 total step(s) taken\n", "Number of step re-do's because of elective soft aborts: 3\n", "Norm usage: {'norm_A': 26, 'norm_B': 22, 'norm_C': 22, 'norm_D': 22}\n" ] } ], "source": [ "dynamics.single_compartment_react(initial_step=0.1, target_end_time=1.) # Using defaults for all other parameters" ] }, { "cell_type": "code", "execution_count": 7, "id": "2d5df59c", "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", "
SYSTEM TIMEABcaption
00.00000080.00000010.000000Initialized state
10.00640078.59200011.408000
20.00960077.91052812.089472
30.01344077.10584612.894154
40.01804876.15876713.841233
50.02357875.04845814.951542
60.02910773.96884616.031154
70.03463772.91908317.080917
80.04016671.89834418.101656
90.04569670.90582719.094173
100.05233269.74773520.252265
110.05896768.62806721.371933
120.06560367.54554622.454454
130.07223866.49894023.501060
140.07887465.48705824.512942
150.08550964.50874925.491251
160.09347263.37372626.626274
170.10143462.28389327.716107
180.10939761.23744928.762551
190.11736060.23266829.767332
200.12532259.26788930.732111
210.13487758.15624931.843751
220.14443357.09771732.902283
230.15398856.08975833.910242
240.16354355.12995534.870045
250.17500954.03321835.966782
260.18647552.99935737.000643
270.19794152.02476937.975231
280.21170150.92231239.077688
290.22546049.89570040.104300
300.23922048.93971741.060283
310.25573147.87145942.128541
320.27224246.89139343.108607
330.29205645.81240744.187593
340.31186944.84031445.159686
350.33564643.78936546.210635
360.35942242.86335547.136645
370.38795341.88424548.115755
380.42219140.87692749.123073
390.45642940.04205049.957950
400.49751439.21170450.788296
410.54681738.41997951.580021
420.60598037.70411352.295887
430.67697537.09919152.900809
440.76217036.63096553.369035
450.86440436.30843653.691564
460.98708436.11924153.880759
471.13430036.03147053.968530
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "0 0.000000 80.000000 10.000000 Initialized state\n", "1 0.006400 78.592000 11.408000 \n", "2 0.009600 77.910528 12.089472 \n", "3 0.013440 77.105846 12.894154 \n", "4 0.018048 76.158767 13.841233 \n", "5 0.023578 75.048458 14.951542 \n", "6 0.029107 73.968846 16.031154 \n", "7 0.034637 72.919083 17.080917 \n", "8 0.040166 71.898344 18.101656 \n", "9 0.045696 70.905827 19.094173 \n", "10 0.052332 69.747735 20.252265 \n", "11 0.058967 68.628067 21.371933 \n", "12 0.065603 67.545546 22.454454 \n", "13 0.072238 66.498940 23.501060 \n", "14 0.078874 65.487058 24.512942 \n", "15 0.085509 64.508749 25.491251 \n", "16 0.093472 63.373726 26.626274 \n", "17 0.101434 62.283893 27.716107 \n", "18 0.109397 61.237449 28.762551 \n", "19 0.117360 60.232668 29.767332 \n", "20 0.125322 59.267889 30.732111 \n", "21 0.134877 58.156249 31.843751 \n", "22 0.144433 57.097717 32.902283 \n", "23 0.153988 56.089758 33.910242 \n", "24 0.163543 55.129955 34.870045 \n", "25 0.175009 54.033218 35.966782 \n", "26 0.186475 52.999357 37.000643 \n", "27 0.197941 52.024769 37.975231 \n", "28 0.211701 50.922312 39.077688 \n", "29 0.225460 49.895700 40.104300 \n", "30 0.239220 48.939717 41.060283 \n", "31 0.255731 47.871459 42.128541 \n", "32 0.272242 46.891393 43.108607 \n", "33 0.292056 45.812407 44.187593 \n", "34 0.311869 44.840314 45.159686 \n", "35 0.335646 43.789365 46.210635 \n", "36 0.359422 42.863355 47.136645 \n", "37 0.387953 41.884245 48.115755 \n", "38 0.422191 40.876927 49.123073 \n", "39 0.456429 40.042050 49.957950 \n", "40 0.497514 39.211704 50.788296 \n", "41 0.546817 38.419979 51.580021 \n", "42 0.605980 37.704113 52.295887 \n", "43 0.676975 37.099191 52.900809 \n", "44 0.762170 36.630965 53.369035 \n", "45 0.864404 36.308436 53.691564 \n", "46 0.987084 36.119241 53.880759 \n", "47 1.134300 36.031470 53.968530 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_history() # The system's history, saved during the run of single_compartment_react()" ] }, { "cell_type": "markdown", "id": "03866901", "metadata": { "tags": [] }, "source": [ "## Plots changes of concentration with time \n", "Notice that adaptive variable time steps were automatically taken" ] }, { "cell_type": "code", "execution_count": 8, "id": "6b033cc7-078f-4b94-a466-1aa91e2fca4d", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "A", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.006400000000000002, 0.009600000000000003, 0.013440000000000004, 0.018048000000000005, 0.023577600000000004, 0.029107200000000007, 0.03463680000000001, 0.04016640000000001, 0.045696000000000014, 0.05233152000000001, 0.05896704000000001, 0.06560256000000002, 0.07223808000000002, 0.07887360000000003, 0.08550912000000004, 0.09347174400000004, 0.10143436800000004, 0.10939699200000004, 0.11735961600000004, 0.12532224000000003, 0.13487738880000003, 0.14443253760000002, 0.15398768640000002, 0.16354283520000001, 0.17500901376000003, 0.18647519232000004, 0.19794137088000005, 0.21170078515200005, 0.22546019942400006, 0.23921961369600006, 0.25573091082240007, 0.27224220794880005, 0.29205576450048004, 0.31186932105216003, 0.335645588914176, 0.359421856776192, 0.38795337821061116, 0.42219120393191417, 0.4564290296532172, 0.4975144205187808, 0.5468168895574572, 0.6059798524038689, 0.6769754078195629, 0.7621700743183957, 0.8644036741169949, 0.9870839938753141, 1.1343003775852971 ], "xaxis": "x", "y": [ 80, 78.592, 77.910528, 77.1058458624, 76.15876717373031, 75.04845757891101, 73.96884582376929, 72.91908317443371, 71.89834436282696, 70.90582693788352, 69.7477353740692, 68.62806650892247, 67.54554556951605, 66.49894007682887, 65.48705844253587, 64.50874861235279, 63.373726382799354, 62.2838929294738, 61.237449146205506, 60.23266755485373, 59.26788945357223, 58.15624872361806, 57.09771745659816, 56.0897583084074, 55.12995515844305, 54.033217749985546, 52.999357276322066, 52.02476894664434, 50.92231177389454, 49.89570042592975, 48.93971693212988, 47.871459377140354, 46.89139341164059, 45.81240721519991, 44.84031378886753, 43.78936544572559, 42.863355249162076, 41.88424541214457, 40.87692656753266, 40.042049758158775, 39.21170378709872, 38.41997915447455, 37.704113470448206, 37.099191058819024, 36.630964980446095, 36.30843587395681, 36.11924081574702, 36.031469807322495 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
Concentration=%{y}", "legendgroup": "B", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.006400000000000002, 0.009600000000000003, 0.013440000000000004, 0.018048000000000005, 0.023577600000000004, 0.029107200000000007, 0.03463680000000001, 0.04016640000000001, 0.045696000000000014, 0.05233152000000001, 0.05896704000000001, 0.06560256000000002, 0.07223808000000002, 0.07887360000000003, 0.08550912000000004, 0.09347174400000004, 0.10143436800000004, 0.10939699200000004, 0.11735961600000004, 0.12532224000000003, 0.13487738880000003, 0.14443253760000002, 0.15398768640000002, 0.16354283520000001, 0.17500901376000003, 0.18647519232000004, 0.19794137088000005, 0.21170078515200005, 0.22546019942400006, 0.23921961369600006, 0.25573091082240007, 0.27224220794880005, 0.29205576450048004, 0.31186932105216003, 0.335645588914176, 0.359421856776192, 0.38795337821061116, 0.42219120393191417, 0.4564290296532172, 0.4975144205187808, 0.5468168895574572, 0.6059798524038689, 0.6769754078195629, 0.7621700743183957, 0.8644036741169949, 0.9870839938753141, 1.1343003775852971 ], "xaxis": "x", "y": [ 10, 11.408000000000001, 12.089472, 12.894154137600001, 13.841232826269698, 14.951542421088993, 16.031154176230725, 17.080916825566298, 18.101655637173042, 19.094173062116482, 20.252264625930806, 21.371933491077524, 22.45445443048395, 23.501059923171127, 24.512941557464124, 25.491251387647203, 26.62627361720064, 27.716107070526196, 28.762550853794487, 29.767332445146263, 30.732110546427762, 31.84375127638193, 32.90228254340183, 33.910241691592596, 34.87004484155694, 35.96678225001445, 37.00064272367793, 37.97523105335565, 39.07768822610545, 40.10429957407024, 41.06028306787011, 42.12854062285964, 43.1086065883594, 44.18759278480008, 45.15968621113246, 46.2106345542744, 47.13664475083792, 48.11575458785542, 49.123073432467336, 49.95795024184122, 50.78829621290127, 51.580020845525446, 52.29588652955179, 52.90080894118097, 53.3690350195539, 53.69156412604318, 53.88075918425297, 53.9685301926775 ], "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.006400000000000002, "x1": 0.006400000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.009600000000000003, "x1": 0.009600000000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.013440000000000004, "x1": 0.013440000000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.018048000000000005, "x1": 0.018048000000000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.023577600000000004, "x1": 0.023577600000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.029107200000000007, "x1": 0.029107200000000007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.03463680000000001, "x1": 0.03463680000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.04016640000000001, "x1": 0.04016640000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.045696000000000014, "x1": 0.045696000000000014, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.05233152000000001, "x1": 0.05233152000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.05896704000000001, "x1": 0.05896704000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.06560256000000002, "x1": 0.06560256000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.07223808000000002, "x1": 0.07223808000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.07887360000000003, "x1": 0.07887360000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.08550912000000004, "x1": 0.08550912000000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.09347174400000004, "x1": 0.09347174400000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.10143436800000004, "x1": 0.10143436800000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.10939699200000004, "x1": 0.10939699200000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.11735961600000004, "x1": 0.11735961600000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.12532224000000003, "x1": 0.12532224000000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.13487738880000003, "x1": 0.13487738880000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.14443253760000002, "x1": 0.14443253760000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.15398768640000002, "x1": 0.15398768640000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.16354283520000001, "x1": 0.16354283520000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.17500901376000003, "x1": 0.17500901376000003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.18647519232000004, "x1": 0.18647519232000004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.19794137088000005, "x1": 0.19794137088000005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.21170078515200005, "x1": 0.21170078515200005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.22546019942400006, "x1": 0.22546019942400006, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.23921961369600006, "x1": 0.23921961369600006, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.25573091082240007, "x1": 0.25573091082240007, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.27224220794880005, "x1": 0.27224220794880005, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.29205576450048004, "x1": 0.29205576450048004, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.31186932105216003, "x1": 0.31186932105216003, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.335645588914176, "x1": 0.335645588914176, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.359421856776192, "x1": 0.359421856776192, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.38795337821061116, "x1": 0.38795337821061116, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.42219120393191417, "x1": 0.42219120393191417, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.4564290296532172, "x1": 0.4564290296532172, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.4975144205187808, "x1": 0.4975144205187808, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5468168895574572, "x1": 0.5468168895574572, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.6059798524038689, "x1": 0.6059798524038689, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.6769754078195629, "x1": 0.6769754078195629, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.7621700743183957, "x1": 0.7621700743183957, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.8644036741169949, "x1": 0.8644036741169949, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.9870839938753141, "x1": 0.9870839938753141, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.1343003775852971, "x1": 1.1343003775852971, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction `A <-> B` . Changes in concentrations with time (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.0011343003775852972, 1.1354346779628823 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 6.111111111111111, 83.88888888888889 ], "title": { "text": "Concentration" }, "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAqEAAAFoCAYAAABnrSK/AAAgAElEQVR4Xu2dB5wV1fXHzxZYpOzSBOlIrxZQUAQBRUVUBFRcY8OCgrFFE7EkQvxbYzRGLEQsYIkLRkAULICAICqJWBBBQaSI9F4Xdpf/nFnvY3Z25s2dcmde+Q0fPrv73q3fe2be7917zr0Zh7WLcIEACIAACIAACIAACIBAiAQyIEJDpI2qQAAEQAAEQAAEQAAEdAIQoTAEEAABEAABEAABEACB0AlAhIaOHBWCAAiAAAiAAAiAAAhAhMIGQAAEQAAEQAAEQAAEQicAERo6clQIAiAAAiAAAiAAAiAAEQobAAEQAAEQAAEQAAEQCJ0ARGjoyFEhCIAACIAACIAACIAARChsAARAAARAAARAAARAIHQCEKGhI0eFIAACIAACIAACIAACEKGwARAAARAAARAAARAAgdAJQISGjhwVggAIgAAIgAAIgAAIQITCBkAABEAABEAABEAABEInABEaOnJUCAIgAAIgAAIgAAIgABEKGwABEAABEAABEAABEAidAERo6MhRIQiAAAiAAAiAAAiAAEQobAAEQAAEQAAEQAAEQCB0AhChoSNHhSAAAiAAAiAAAiAAAhChsAEQAAEQAAEQAAEQAIHQCUCEho4cFYIACIAACIAACIAACECEwgZAAARAAARAAARAAARCJwARGjpyVAgCIAACIAACIAACIAARChsAARAAARAAARAAARAInQBEaOjIUSEIgAAIgAAIgAAIgABEKGwABEAABEAABEAABEAgdAIQoaEjR4UgAAIgAAIgAAIgAAIQobABEAABEAABEAABEACB0AlAhIaOHBWCAAiAAAiAAAiAAAhAhMIGQAAEQAAEQAAEQAAEQicAERo6clQIAiAAAiAAAiAAAiAAEQobAAEQAAEQAAEQAAEQCJ0ARGjoyFEhCIAACIAACIAACIAARChsAARAAARAAARAAARAIHQCEKGhI0eFIAACIAACIAACIAACEKGwARAAARAAARAAARAAgdAJQISGjhwVggAIgAAIgAAIgAAIQISmkA08/nwBjZvwAZ3QoQW98cyfU6hn4XblzMF30IZN22jE7y+jqy45J9zKURsIgAAIgAAIpAkBiNAUG+hX3/qQHnv2TfrHX39PZ/c8OcV6F153Lr/5QV2Izpr4ZHiV+qhJ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ze212nbJfA/FG1PuW0KJULuBxOsgAALJSSCej1dy9gitBgEQUEnAjbuBynYkS9lBT1aF3W+I0LCJoz4QSEECPAtnXPblLib7wzEFhwldAoGkIJBKq3GqgSf7cxYiVLWFoHwQSAMCdkvBMhHbaYAHXQQBEHBBQDxPZLfMclF0yiWFCE25IUWHQAAEQAAEQAAEQAAEVBPATKhqwigfBEAABEAABEAABECgHAGIUBgFCIAACIAACIAACIBA6AQgQkNHjgpBAARAAARAAARAAAQgQmEDIAACIAACIAACIAACoROACA0dOSoEARAAARAAARAAARCACIUNgAAIgAAIgAAIgAAIhE4AIjR05KgQBEAABEAABEAABEAAIhQ2AAIgAAIgAAIgAAIgEDoBiNDQkaNCEAABEAABEAABEAABiFDYAAiAAAiAAAiAAAiAQOgEIEJDR44KQQAEQAAEQAAEQAAEIEJhAyAAAiAAAiAAAiAAAqETgAgNHTkqBAEQAAEQAAEQAAEQgAiFDYAACIAACIAACIAACIROACI0dOSoEARAAARAAARAAARAACIUNgACIAACIAACIAACIBA6AYjQ0JGjQhAAARAAARAAARAAAYhQ2AAIgAAIgAAIgAAIgEDoBCBCQ0eOCkEABEAABEAABEAABCBCYQMgAAIgAAIgAAIgAAKhE4AIDR05KgQBEAABEAABEAABEIAIhQ2AAAiAAAiAAAiAAAiETgAiNHTkqBAEQAAEQAAEQAAEQAAiFDYAAiAAAiAAAiAAAiAQOgGI0NCRo0IQAAEQAAEQAAEQAAGIUNgACIAACIAACIAACIBA6AQgQkNHjgpBAARAAARAAARAAAQgQmEDIAACIAACIAACIAACoROACA0dOSoEARAAARAAARAAARCACIUNgAAIgAAIgAAIgAAIhE4AIjR05KgQBEAABEAABEAABEAAIhQ2AAIgAAIgAAIgAAIgEDoBiNDQkaNCEAABEAABEAABEAABiFDYAAiAAAiAAAiAAAiAQOgEIEJDR44KQQAEQAAEQAAEQAAEIEJhAyAAAiAAAiAAAiAAAqETgAgNHTkqBAEQAAEQAAEQAAEQgAiFDYAACIAACIAACIAACIROACI0dOSoEARAAARAAARAAARAACIUNgACIAACIAACIAACIBA6AYjQ0JGjQhAAARAAARAAARAAAYhQ2AAI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PF/TduhD6zhEqAfUVjcmblb3IIPgOPqlSTTx3dkQ/xb4vfJloXRN/rnUvEl9iNA4Zu2FL4v7mtWrlVkuxiyTNWQvfIULiViCh+h3/1w25sDnmj9+yO1MACLUmVG5FF4ejh6qSfksfjliaTO+iXjhyx/iG7ds191K8AEULF8rezWLppS/6V100Iv9ijzGauAT6gK6KSmeAd7ZIaccAYhQOU5lUnl5OHqoJuWz+OEo8iKow95M3PI1u5TgA0iNCDXPfPLsKHxEy7N2a79cgnAjEYF0vFIy5rWpBCHq7eMEzwBv3JBLngBEqDyrMimtfI/ue/RFPOxc8vTCkcUSs8YypjNsN3wFV6tSIfatWbvhK0SSWXBChNrbsRu+QjAZBSdElPMzIl4K8PPHD7mdCUCEOjOyTOE2atNjNSmfzYkj+3TxJba/QgCYO5Nwy9dYOj6AnFm75cvpl6/8JebDjN0d4jN2y5cFfddObWO7lICvsw1DhPpjhNz+CECE+uDndv86H1WldNZ4HI0i1MrfS4DBcqa9icjyNZcAESp327nla0zPQUrGLcfkakyvVG75GvdgBV/vtmLebxUsvbNETnsCEKGwDhAAARAAARAAARAAgdAJQISGjhwVggAIgAAIgAAIgAAIQITCBkAABEAABEAABEAABEInABEaOnJUCAIgAAIgAAIgAAIgABEKGwABEAABEAABEAABEAidAERo6MhRIQiAAAiAAAiAAAiAAEQobAAEQAAEQAAEQAAEQCB0AhChoSNHhSAAAiAAAiAAAiAAAhChsAEQAAEQAAEQAAEQAIHQCUCEho4cFYIACIAACIAACIAACECEwgZAAARAAARAAARAAARCJwARGjpyVAgCIAACIAACIAACIAARChsAARAAARAAARAAARAInQBEaOjIUSEIgAAIgAAIgAAIgABEKGwABEAABEAABEAABEAgdAIQoaEjR4UgAAIgAAIgAAIgAAIQobABEAABEAABEAABEACB0AlAhIaOHBWCAAiAAAiAAAiAAAhAhMIGQAAEQAAEQAAEQAAEQicAERo6clQIAulLYPRLk2jMa1PLARh2ZX+65bpB1GPALfp786aMLpeG36tZPZfeGfeQ/p5TWe17DYkLumb1ano9197xGH2xaKll2ofuvp4G9O1OFw65j1asWkfib5F4ygfz6b5HX6QWTRvE2mUuSKYd3bt0pKkfLYhl7X92N3rk3htc1SvTj/S1PPQcBEAgEQlAhCbiqKBNIJCCBIRIKnj+furYtlmshywmZ877MibiWLR17dSWXn5yRCzNPQ+/QPMXLo6JU9myzGLRLCL5fS5r67ZdtiKS0wgRam6XeD2eCDUOpRCtVu2wes9NvTL9SEGzQpdAAASSmABEaBIPHpoOAslEgMWlmOGL126zGFu8dCXlD3+gzCykbFlBitBaNXP1GVMhokW7WJg6iViZdtiJUNl6IUKT6W5AW0EABJgARCjsAARAIBQCvJzeslnDMjOcdhWzoFq+8hd95pNnA1mIGWdG3ZTFdcSbgZQRb9yGdq2a0MYt26lu7Rr6UjnPzvLFr6kUobL1yvQjlIFGJSAAAiAgSQAiVBIUkoEACPgjIISgKEX4ZNqVavSlXDJnXJlkbstyEqEyPqEsBrt2aqf7gHJ7uH08K/qPsW8pF6Ey9cIn1J99IjcIgED4BCBCw2eOGkEg7QmIpWwBwmqZXghHEbRkB81NWX58QlmEimAhbouYnXUzA+nFJ1S2XjftSHsDBAAQAIGEIAARmhDDgEaAQPoS4GVtjgw3z3Za+YI6UbIry2km1Gk5XSzHswgVUflC0LoRf35EqFO9btrhxBHvgwAIgEAYBCBCw6CMOkAgzQmwoPz35Jn6TKL5EuLKHDVvJ0K9lBWkCOX2s0+q2EbKjfjzI0Kd6nXTjjQ3R3QfBEAgQQhAhCbIQKAZIJDKBIxL5sYZT2OEuTHwiFnEE6EcLc+XbFlBi1DjWLkRf35FaLx63bQjlW0NfQMBEEgeAhChyTNWaCkIJD0Bq43b7Xw+nZbj3ZTlJEJlA5OsZnLdiD+7dgg3AjHAxs3qhU+oefDN9SIwKelvD3QABNKOAERo2g05OgwCIAACIAACIAAC0ROACI1+DNACEAABEAABEAABEEg7AhChaTfk6DAIgAAIgAAIgAAIRE8AIjT6MUALQAAEQAAEQAAEQCDtCECEpt2Qo8MgAAIgAAIgAAIgED0BiNDoxwAtAAEQAAEQAAEQAIG0IwARmnZDjg6DAAiAAAiAAAiAQPQEIEKjHwO0AARAAARAAARAAATSjgBEaNoNOToMAiAAAiAAAiAAAtETgAiNfgzQAhAAARAAARAAARBIOwIQoWk35OgwCIAACIAACIAACERPACI0+jFAC0AABEAABEAABEAg7QhAhKbdkKPDIAACIAACIAACIBA9AYjQ6McALQABEAABEAABEACBtCMAEZp2Q44OgwAIgAAIgAAIgED0BCBCox8DtAAEQAAEQAAEQAAE0o4ARGjaDTk6DAIgAAIgAAIgAALRE4AIjX4M0AIQAAEQAAEQAAEQSDsCEKFpN+ToMAiAAAiAAAiAAAhETwAiNPoxQAtAAARAAARAAARAIO0IQISm3ZCjwyAAAiAAAiAAAiAQPQGI0OjHAC0AARAAARAAARAAgbQjABGadkOODoMACIAACIAACIBA9AQgQqMfA7QABEAABEAABEAABNKOAERo2g05OgwCIAACIAACIAAC0ROACI1+DNACEAABEAABEAABEEg7AhChaTfk6DAIgAAIgAAIgAAIRE8AIjT6MUALQAAEQAAEQAAEQCDtCECEpt2Qo8MgAAIgAAIgAAIgED0BiNDoxwAtAAEQAAEQAAEQAIG0IwARmnZDjg6DAAiAAAiAAAiAQPQEIEKjHwO0AARAAARAAARAAATSjgBEaNoNOToMAiAAAiAAAiAAAtETgAiNfgzQAhAAARAAARAAARBIOwIQoWk35OgwCIAACIAACIAACERPACI0+jFAC0AABEAABEAABEAg7QhAhKbdkKPDIAACIAACIAACIBA9AYjQ6McALQABEAABEAABEACBtCPw/wjQr80zsmxvAAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_history(show_intervals=True)" ] }, { "cell_type": "code", "execution_count": 9, "id": "23c4b3ba", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0: A <-> B\n", "Final concentrations: [A] = 36.03 ; [B] = 53.97\n", "1. Ratio of reactant/product concentrations, adjusted for reaction orders: 1.49782\n", " Formula used: [B] / [A]\n", "2. Ratio of forward/reverse reaction rates: 1.5\n", "Discrepancy between the two values: 0.1456 %\n", "Reaction IS in equilibrium (within 1% tolerance)\n", "\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Verify that the reaction has reached equilibrium\n", "dynamics.is_in_equilibrium()" ] }, { "cell_type": "code", "execution_count": null, "id": "7f59733f", "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 }