{
"cells": [
{
"cell_type": "markdown",
"id": "5cbc8640",
"metadata": {},
"source": [
"### Demonstration of file storage of system history, and stop-restart of simulation, for the reaction `A <-> B`,\n",
"with 1st-order kinetics in both directions, taken to equilibrium.\n",
"\n",
"Same as experiment `react_1_a`, but with file storage of system history, and reaction stop-restart."
]
},
{
"cell_type": "markdown",
"id": "5a3fe1d4-ffc9-4db9-ac0f-d51d2231d32b",
"metadata": {},
"source": [
"### TAGS : \"basic\", \"uniform compartment\""
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "97a57e9a-039b-479a-81dc-81399e22743a",
"metadata": {},
"outputs": [],
"source": [
"LAST_REVISED = \"Nov. 18, 2024\"\n",
"LIFE123_VERSION = \"1.0.0.rc.0\" # Version this experiment is based on"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "b5b8a8b0-d417-4432-b6a8-c196af57b105",
"metadata": {},
"outputs": [],
"source": [
"#import set_path # Using MyBinder? Uncomment this before running the next cell!\n",
" # Importing this module will add the project's home directory to sys.path"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "a29db1c7",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"#import sys\n",
"#sys.path.append(\"C:/some_path/my_env_or_install\") # CHANGE to the folder containing your venv or libraries installation!\n",
"# NOTE: If any of the imports below can't find a module, uncomment the lines above, or try: import set_path\n",
"\n",
"import ipynbname\n",
"import life123"
]
},
{
"cell_type": "code",
"execution_count": 4,
"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": 5,
"id": "e244883f-4075-4b46-9f1a-d42ed4a42402",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"# Initialize logging (for the system state)\n",
"csv_log_file = ipynbname.name() + \"_system_log.csv\" # Use the notebook base filename \n",
" # IN CASE OF PROBLEMS, set manually to any desired name"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ac9eea69-174c-43e5-9eed-443cbc5e2ba7",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "2c2d4ca4-cbfe-4733-a20c-e2d5a1c35e7d",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "e0529a0c",
"metadata": {},
"source": [
"## Initialize the Uniform-Compartment Simulation"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "4aac8eed-932a-4aae-9cad-bb76fc4dccb4",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"# Instantiate the simulator and specify the chemicals\n",
"uc = life123.UniformCompartment() "
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "e59bd726-e9fb-48f4-8e31-cc39e4c3677d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-> CSV-format output will be LOGGED into the file 'react_1_b_system_log.csv' . An existing file by that name was over-written\n"
]
}
],
"source": [
"# We're now requesting that all System Concentration Data get logged in our previously-specified CSV file\n",
"uc.start_csv_log(csv_log_file)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "62181bcb-ef36-4e3b-bf3f-a7c429c7bba6",
"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": [
"# Reaction A <-> B , with 1st-order kinetics in both directions\n",
"uc.add_reaction(reactants=\"A\", products=\"B\", \n",
" forward_rate=3., reverse_rate=2.)\n",
"\n",
"uc.describe_reactions()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "9fc3948d",
"metadata": {},
"outputs": [],
"source": [
"# Set the initial concentrations of all the chemicals\n",
"uc.set_conc({\"A\": 80., \"B\": 10.})"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "2ed62975-8865-427d-9734-74a0849e292d",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "53d9d004-2e43-4e6f-8113-3c26e51364df",
"metadata": {
"tags": []
},
"source": [
"#### This time (contrasted to experiment `react_1_a`) we'll be running the simulation in two parts"
]
},
{
"cell_type": "markdown",
"id": "ff4f04a1-7723-4116-a906-1cad31c94662",
"metadata": {},
"source": [
"## Part 1 (early run)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "43735178-313b-48cf-a583-5181238feac3",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"28 total step(s) taken in 0.00 min\n",
"Number of step re-do's because of elective soft aborts: 3\n",
"Norm usage: {'norm_A': 12, 'norm_B': 8, 'norm_C': 8, 'norm_D': 8}\n",
"System Time is now: 0.2117\n"
]
}
],
"source": [
"uc.single_compartment_react(initial_step=0.1, target_end_time=0.2) # The first part of our run"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "2d5df59c",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" B | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.000000 | \n",
" 80.000000 | \n",
" 10.000000 | \n",
" Set concentration | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.006400 | \n",
" 78.592000 | \n",
" 11.408000 | \n",
" 1st reaction step | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.009600 | \n",
" 77.910528 | \n",
" 12.089472 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.013440 | \n",
" 77.105846 | \n",
" 12.894154 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.018048 | \n",
" 76.158767 | \n",
" 13.841233 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.023578 | \n",
" 75.048458 | \n",
" 14.951542 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.029107 | \n",
" 73.968846 | \n",
" 16.031154 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.034637 | \n",
" 72.919083 | \n",
" 17.080917 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.040166 | \n",
" 71.898344 | \n",
" 18.101656 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.045696 | \n",
" 70.905827 | \n",
" 19.094173 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.052332 | \n",
" 69.747735 | \n",
" 20.252265 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.058967 | \n",
" 68.628067 | \n",
" 21.371933 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.065603 | \n",
" 67.545546 | \n",
" 22.454454 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.072238 | \n",
" 66.498940 | \n",
" 23.501060 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.078874 | \n",
" 65.487058 | \n",
" 24.512942 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.085509 | \n",
" 64.508749 | \n",
" 25.491251 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.093472 | \n",
" 63.373726 | \n",
" 26.626274 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.101434 | \n",
" 62.283893 | \n",
" 27.716107 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.109397 | \n",
" 61.237449 | \n",
" 28.762551 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.117360 | \n",
" 60.232668 | \n",
" 29.767332 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.125322 | \n",
" 59.267889 | \n",
" 30.732111 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.134877 | \n",
" 58.156249 | \n",
" 31.843751 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.144433 | \n",
" 57.097717 | \n",
" 32.902283 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.153988 | \n",
" 56.089758 | \n",
" 33.910242 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.163543 | \n",
" 55.129955 | \n",
" 34.870045 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.175009 | \n",
" 54.033218 | \n",
" 35.966782 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.186475 | \n",
" 52.999357 | \n",
" 37.000643 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.197941 | \n",
" 52.024769 | \n",
" 37.975231 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.211701 | \n",
" 50.922312 | \n",
" 39.077688 | \n",
" last reaction step | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A B caption\n",
"0 0.000000 80.000000 10.000000 Set concentration\n",
"1 0.006400 78.592000 11.408000 1st reaction step\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 last reaction step"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"uc.get_history() # The system's concentrations history, saved during the run of single_compartment_react()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"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": "darkturquoise",
"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
],
"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
],
"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
],
"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
],
"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"
}
],
"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": [
-9.093676338144332e-05,
0.2117917219153815
],
"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": "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AHr/i7DlAhwODdJIkYkzTGKVqOixBdyV196U/AkBAgSeFFCcn4TzbwQIECDwfwTGLc/jjdLHq8r3nm1epT471uqK8+pW63mr9ijO823es4TvFNZXivNq7k6OlaPfEyBAgACBdxJQnN9pmz4LAQIE3lhglOCPz6+fK7bHn1kIj2/bPivOzxzryuI88o9nrOdXZu0U1leK82ruTo43PtV8NAIECBAg8EtAcXZSECBAgECFwCzBI+zxyvK9r58af/eoOI+3bO8c6+rifIu+U1hfLc6P5u7kqDhphCRAgAABAhcJKM4XQToMAQIECGQEbl/4NSeePcO8ulV751ir4vzXl4Pdu2K+U1jPcsxbzKfJfOb79hbx44aOc70cLHMOm0KAAAECfQKKc9/OJCZAgAABAgQIECBAgACBoIDiHMQ2igABAgQIECBAgAABAgT6BBTnvp1JTIAAAQIECBAgQIAAAQJBAcU5iG0UAQIECBAgQIAAAQIECPQJKM59O5OYAAECBAgQIECAAAECBIICinMQ2ygCBAgQIECAAAECBAgQ6BNQnPt2JjEBAgQIECBAgAABAgQIBAUU5yC2UQQIECBAgAABAgQIECDQJ6A49+1MYgIECBAgQIAAAQIECBAICijOQWyjCBAgQIAAAQIECBAgQKBPQHHu25nEBAgQIECAAAECBAgQIBAUUJyD2EYRIECAAAECBAgQIECAQJ+A4ty3M4kJECBAgAABAgQIECBAICigOAexjSJAgAABAgQIECBAgACBPgHFuW9nEhMgQIAAAQIECBAgQIBAUEBxDmIbRYAAAQIECBAgQIAAAQJ9Aopz384kJkCAAAECBAgQIECAAIGggOIcxDaKAAECBAgQIECAAAECBPoEFOe+nUlMgAABAgQIECBAgAABAkEBxTmIbRQBAgQIECBAgAABAgQI9Akozn07k5gAAQIECBAgQIAAAQIEggKKcxDbKAIECBAgQIAAAQIECBDoE1Cc+3YmMQECBAgQIECAAAECBAgEBRTnILZRBAgQIECAAAECBAgQINAnoDj37UxiAgQIECBAgAABAgQIEAgKKM5BbKMIECBAgAABAgQIECBAoE9Ace7bmcQECBAgQIAAAQIECBAgEBRQnIPYRhEgQIAAAQIECBAgQIBAn4Di3LcziQkQIECAAAECBAgQIEAgKKA4B7GNIkCAAAECBAgQIECAAIE+AcW5b2cSEyBAgAABAgQIECBAgEBQQHEOYhtFgAABAgQIECBAgAABAn0CinPfziQmQIAAAQIECBAgQIAAgaCA4hzENooAAQIECBAgQIAAAQIE+gQU576dSUyAAAECBAgQIECAAAECQQHFOYhtFAECBAgQIECAAAECBAj0CSjOfTuTmAABAgQIECBAgAABAgSCAopzENsoAgQIECBAgAABAgQIEOgT+AaICdkcKfaP6QAAAABJRU5ErkJggg==",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"uc.plot_history(show_intervals=True)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "23c4b3ba",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0: A <-> B\n",
"Final concentrations: [A] = 50.92 ; [B] = 39.08\n",
"1. Ratio of reactant/product concentrations, adjusted for reaction orders: 0.767398\n",
" Formula used: [B] / [A]\n",
"2. Ratio of forward/reverse reaction rates: 1.5\n",
"Discrepancy between the two values: 48.84 %\n",
"Reaction is NOT in equilibrium (not within 1% tolerance)\n",
"\n"
]
},
{
"data": {
"text/plain": [
"{False: [0]}"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# We're nowhere near equilibrium yet!\n",
"uc.is_in_equilibrium()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "33e46694-c5c0-4ced-bb59-e665e8aea022",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "7f59733f",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "236f3df9-ca09-48fe-9afe-b4b9748dd1d9",
"metadata": {},
"source": [
"## Part 2 (late run)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "a2299384-404b-4cb6-a709-04803cab93d2",
"metadata": {},
"outputs": [],
"source": [
"initial_step = 0.013759414272 # We're choosing this value simply FOR DEMONSTRATION PURPOSES,\n",
" # to remain in exact lockstep with the time course of experiment `react_1_a`\n",
"\n",
"'''\n",
"If you run experiment `react_1_a`, you can determine what the next time step would have been, had we not stopped early this time\n",
"\n",
" In experiment `react_1_a`, after running the simulation, you can issue:\n",
"\n",
" list(uc.get_history(t_start=0.21, t_end=0.23, columns=\"SYSTEM TIME\"))\n",
"\n",
" and you will get: [0.211700785152, 0.225460199424]\n",
"\n",
" Their difference is the initial_step we're using here.\n",
"''';"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "16970ff9-f064-4620-b232-12af11dfed3f",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"19 total step(s) taken in 0.00 min\n",
"Norm usage: {'norm_A': 14, 'norm_B': 14, 'norm_C': 14, 'norm_D': 14}\n",
"System Time is now: 1.1343\n"
]
}
],
"source": [
"uc.single_compartment_react(initial_step=0.013759414272, target_end_time=1.0) # The 2nd part of our run, to the final target end time"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "3adf0b32-3f63-4350-a853-4461014e418e",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" B | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.000000 | \n",
" 80.000000 | \n",
" 10.000000 | \n",
" Set concentration | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.006400 | \n",
" 78.592000 | \n",
" 11.408000 | \n",
" 1st reaction step | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.009600 | \n",
" 77.910528 | \n",
" 12.089472 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.013440 | \n",
" 77.105846 | \n",
" 12.894154 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.018048 | \n",
" 76.158767 | \n",
" 13.841233 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.023578 | \n",
" 75.048458 | \n",
" 14.951542 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.029107 | \n",
" 73.968846 | \n",
" 16.031154 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.034637 | \n",
" 72.919083 | \n",
" 17.080917 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.040166 | \n",
" 71.898344 | \n",
" 18.101656 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.045696 | \n",
" 70.905827 | \n",
" 19.094173 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.052332 | \n",
" 69.747735 | \n",
" 20.252265 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.058967 | \n",
" 68.628067 | \n",
" 21.371933 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.065603 | \n",
" 67.545546 | \n",
" 22.454454 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.072238 | \n",
" 66.498940 | \n",
" 23.501060 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.078874 | \n",
" 65.487058 | \n",
" 24.512942 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.085509 | \n",
" 64.508749 | \n",
" 25.491251 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.093472 | \n",
" 63.373726 | \n",
" 26.626274 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.101434 | \n",
" 62.283893 | \n",
" 27.716107 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.109397 | \n",
" 61.237449 | \n",
" 28.762551 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.117360 | \n",
" 60.232668 | \n",
" 29.767332 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.125322 | \n",
" 59.267889 | \n",
" 30.732111 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.134877 | \n",
" 58.156249 | \n",
" 31.843751 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.144433 | \n",
" 57.097717 | \n",
" 32.902283 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.153988 | \n",
" 56.089758 | \n",
" 33.910242 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.163543 | \n",
" 55.129955 | \n",
" 34.870045 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.175009 | \n",
" 54.033218 | \n",
" 35.966782 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.186475 | \n",
" 52.999357 | \n",
" 37.000643 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.197941 | \n",
" 52.024769 | \n",
" 37.975231 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.211701 | \n",
" 50.922312 | \n",
" 39.077688 | \n",
" last reaction step | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.225460 | \n",
" 49.895700 | \n",
" 40.104300 | \n",
" 1st reaction step | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.239220 | \n",
" 48.939717 | \n",
" 41.060283 | \n",
" | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.255731 | \n",
" 47.871459 | \n",
" 42.128541 | \n",
" | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.272242 | \n",
" 46.891393 | \n",
" 43.108607 | \n",
" | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.292056 | \n",
" 45.812407 | \n",
" 44.187593 | \n",
" | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.311869 | \n",
" 44.840314 | \n",
" 45.159686 | \n",
" | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.335646 | \n",
" 43.789365 | \n",
" 46.210635 | \n",
" | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.359422 | \n",
" 42.863355 | \n",
" 47.136645 | \n",
" | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.387953 | \n",
" 41.884245 | \n",
" 48.115755 | \n",
" | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.422191 | \n",
" 40.876927 | \n",
" 49.123073 | \n",
" | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.456429 | \n",
" 40.042050 | \n",
" 49.957950 | \n",
" | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.497514 | \n",
" 39.211704 | \n",
" 50.788296 | \n",
" | \n",
"
\n",
" \n",
" | 41 | \n",
" 0.546817 | \n",
" 38.419979 | \n",
" 51.580021 | \n",
" | \n",
"
\n",
" \n",
" | 42 | \n",
" 0.605980 | \n",
" 37.704113 | \n",
" 52.295887 | \n",
" | \n",
"
\n",
" \n",
" | 43 | \n",
" 0.676975 | \n",
" 37.099191 | \n",
" 52.900809 | \n",
" | \n",
"
\n",
" \n",
" | 44 | \n",
" 0.762170 | \n",
" 36.630965 | \n",
" 53.369035 | \n",
" | \n",
"
\n",
" \n",
" | 45 | \n",
" 0.864404 | \n",
" 36.308436 | \n",
" 53.691564 | \n",
" | \n",
"
\n",
" \n",
" | 46 | \n",
" 0.987084 | \n",
" 36.119241 | \n",
" 53.880759 | \n",
" | \n",
"
\n",
" \n",
" | 47 | \n",
" 1.134300 | \n",
" 36.031470 | \n",
" 53.968530 | \n",
" last reaction step | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A B caption\n",
"0 0.000000 80.000000 10.000000 Set concentration\n",
"1 0.006400 78.592000 11.408000 1st reaction step\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 last reaction step\n",
"29 0.225460 49.895700 40.104300 1st reaction step\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 last reaction step"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"uc.get_history() # The cumulative system's history"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "b65f092f-f5ab-4849-8df7-eb225f8758cb",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
Concentration=%{y}",
"legendgroup": "A",
"line": {
"color": "darkturquoise",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "A",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.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.0004872424302342342,
1.1347876200155314
],
"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": "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AiAAAmERgHAOizzyBQEQAAEQAAEQAAEQAAEQAAEQiAUBCOdYNBMKCQIgAAIgAAIgAAIgAAIgAAIgEBYBCOewyCNfEAABEAABEAABEAABEAABEACBWBCAcI5FM6GQIAACIAACIAACIAACIAACIAACYRGAcA6LPPIFARAAARAAARAAARAAARAAARCIBQEI51g0EwoJAiAAAiAAAiAAAiAAAiAAAiAQFgEI57DII18QAAEQAAEQAAEQAAEQAAEQAIFYEIBwjkUzoZAgAAIgAAIgAAIgAAIgAAIgAAJhEYBwDos88gUBEAABEAABEAABEAABEAABEIgFAQjnWDQTCgkCIAACIAACIAACIAACIAACIBAWAQjnsMgjXxAAARAAARAAARAAARAAARAAgVgQgHCORTOhkCAAAiAAAiAAAiAAAiAAAiAAAmERgHAOizzyBQEQAAEQAAEQAAEQAAEQAAEQiAUBCOdYNBMKCQIgAAIgAAIgAAIgAAIgAAIgEBYBCOewyCNfEAABEAABEAABEAABEAABEACBWBCAcI5FM6GQIAACIAACIAACIAACIAACIAACYRGAcA6LPPIFARAAARAAARAAARAAARAAARCIBQEI51g0EwoJAiAAAiAAAiAAAiAAAiAAAiAQFgEI57DII18QAAEQAAEQAAEQAAEQAAEQAIFYEIBwjkUzoZAgAAIgAAIgAAIgAAIgAAIgAAJhEYBwDos88gUBEAABEAABEAABEAABEAABEIgFAQjnWDQTCgkCIAACIAACIAACIAACIAACIBAWAQjnsMgjXxAAARAAARAAARAAARAAARAAgVgQgHCORTOhkCAAAiAAAiAAAiAAAiAAAiAAAmERgHAOizzyBQEQAAEQAAEQAAEQAAEQAAEQiAUBCOdYNBMKCQIgAAIgAAIgAAIgAAIgAAIgEBYBCOewyCNfEAABEAABEAABEAABEAABEACBWBCAcI5FM6GQIAACIAACIAACIAACIAACIAACYRGAcA6LPPIFARAAARAAARAAARAAARAAARCIBQEI51g0EwoJAiAAAiAAAiAAAiAAAiAAAiAQFgEI57DII18QAAEQAAEQAAEQAAEQAAEQAIFYEIBwVtBMDfsPUENjq4KUkEQhE+hUUUKVZSW0a29LIVcTdVNEoHt1Oe1vbqOmljZFKSKZQiVQXFREvbpV0Kd1TYVa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",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"uc.plot_history(show_intervals=True)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "4eac2789-754e-4cc6-92a6-7c087997b923",
"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": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Verify that the reaction has reached equilibrium\n",
"uc.is_in_equilibrium()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "59fce89c-186f-4f41-a60a-955820ffde73",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "fec11ec2-e464-49ec-9722-41273fd87ba9",
"metadata": {},
"source": [
"#### As we requested, a log of the concentration data, in CSV format, has ben saved in the following file:"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "58117fc0-250f-4136-93cc-63c9899dd9bb",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'react_1_b_system_log.csv'"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"csv_log_file"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "1d0f4922-ea2d-4493-9114-ecc66b1784cd",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM TIME,A,B,caption\n",
"0.0,80.0,10.0,Set concentration\n",
"0.006400000000000002,78.592,11.408000000000001,1st reaction step\n",
"0.009600000000000003,77.910528,12.089472,\n",
"0.013440000000000004,77.1058458624,12.894154137600001,\n",
"0.018048000000000005,76.15876717373031,13.841232826269698,\n",
"0.023577600000000004,75.04845757891101,14.951542421088993,\n",
"0.029107200000000007,73.96884582376929,16.031154176230725,\n",
"0.03463680000000001,72.91908317443371,17.080916825566298,\n",
"0.04016640000000001,71.89834436282696,18.101655637173042,\n",
"0.045696000000000014,70.90582693788352,19.094173062116482,\n",
"0.05233152000000001,69.7477353740692,20.252264625930806,\n",
"0.05896704000000001,68.62806650892247,21.371933491077524,\n",
"0.06560256000000002,67.54554556951605,22.45445443048395,\n",
"0.07223808000000002,66.49894007682887,23.501059923171127,\n",
"0.07887360000000003,65.48705844253587,24.512941557464124,\n",
"0.08550912000000004,64.50874861235279,25.491251387647203,\n",
"0.09347174400000004,63.373726382799354,26.62627361720064,\n",
"0.10143436800000004,62.2838929294738,27.716107070526196,\n",
"0.10939699200000004,61.237449146205506,28.762550853794487,\n",
"0.11735961600000004,60.23266755485373,29.767332445146263,\n",
"0.12532224000000003,59.26788945357223,30.732110546427762,\n",
"0.13487738880000003,58.15624872361806,31.84375127638193,\n",
"0.14443253760000002,57.09771745659816,32.90228254340183,\n",
"0.15398768640000002,56.0897583084074,33.910241691592596,\n",
"0.16354283520000001,55.12995515844305,34.87004484155694,\n",
"0.17500901376000003,54.033217749985546,35.96678225001445,\n",
"0.18647519232000004,52.999357276322066,37.00064272367793,\n",
"0.19794137088000005,52.02476894664434,37.97523105335565,\n",
"0.21170078515200005,50.92231177389454,39.07768822610545,\n",
"0.22546019942400006,49.89570042592975,40.10429957407024,1st reaction step\n",
"0.23921961369600006,48.93971693212988,41.06028306787011,\n",
"0.25573091082240007,47.871459377140354,42.12854062285964,\n",
"0.27224220794880005,46.89139341164059,43.1086065883594,\n",
"0.29205576450048004,45.81240721519991,44.18759278480008,\n",
"0.31186932105216003,44.84031378886753,45.15968621113246,\n",
"0.335645588914176,43.78936544572559,46.2106345542744,\n",
"0.359421856776192,42.863355249162076,47.13664475083792,\n",
"0.38795337821061116,41.88424541214457,48.11575458785542,\n",
"0.42219120393191417,40.87692656753266,49.123073432467336,\n",
"0.4564290296532172,40.042049758158775,49.95795024184122,\n",
"0.4975144205187808,39.21170378709872,50.78829621290127,\n",
"0.5468168895574572,38.41997915447455,51.580020845525446,\n",
"0.6059798524038689,37.704113470448206,52.29588652955179,\n",
"0.6769754078195629,37.099191058819024,52.90080894118097,\n",
"0.7621700743183957,36.630964980446095,53.3690350195539,\n",
"0.8644036741169949,36.30843587395681,53.69156412604318,\n",
"0.9870839938753141,36.11924081574702,53.88075918425297,\n",
"1.1343003775852971,36.031469807322495,53.9685301926775,\n",
"\n"
]
}
],
"source": [
"# Here's dump of the contents of that log file\n",
"with open(csv_log_file, 'r', encoding='utf8') as fh:\n",
" file_contents = fh.read()\n",
" print(file_contents)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "c8f058df-f310-43eb-9b5c-a68a9918423b",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}