{
"cells": [
{
"cell_type": "markdown",
"id": "c3b90917-d8b3-4644-a485-b22d440272b9",
"metadata": {},
"source": [
"## One-bin Association/Dissociation reaction `A + B <-> C`\n",
"### with 1st-order kinetics for each species, taken to equilibrium\n",
"\n",
"Diffusion not applicable (just 1 bin)\n",
"\n",
"See also the experiment _\"reactions_single_compartment/react_3\"_ \n",
"\n",
"LAST REVISED: July 14, 2023"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "a8f89c58-e3b5-4a07-96ec-6f7455db1bf5",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Added 'D:\\Docs\\- MY CODE\\BioSimulations\\life123-Win7' to sys.path\n"
]
}
],
"source": [
"import set_path # Importing this module will add the project's home directory to sys.path"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "f5117d69",
"metadata": {},
"outputs": [],
"source": [
"from experiments.get_notebook_info import get_notebook_basename\n",
"\n",
"from src.modules.chemicals.chem_data import ChemData as chem\n",
"from src.life_1D.bio_sim_1d import BioSim1D\n",
"\n",
"import plotly.express as px\n",
"from src.modules.visualization.graphic_log import GraphicLog"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "ada82175-1d15-4213-b834-5a5d8e2dd31e",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-> Output will be LOGGED into the file 'reaction_4.log.htm'\n"
]
}
],
"source": [
"# Initialize the HTML logging\n",
"log_file = get_notebook_basename() + \".log.htm\" # Use the notebook base filename for the log file\n",
"\n",
"# Set up the use of some specified graphic (Vue) components\n",
"GraphicLog.config(filename=log_file,\n",
" components=[\"vue_cytoscape_1\"],\n",
" extra_js=\"https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.21.2/cytoscape.umd.js\")"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "d8f2d83d-97bc-4f57-8f71-c0923f0334ed",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of reactions: 1 (at temp. 25 C)\n",
"0: A + B <-> C (kF = 5 / kR = 2 / Delta_G = -2,271.45 / K = 2.5) | 1st order in all reactants & products\n"
]
}
],
"source": [
"# Specify the chemicals\n",
"chem_data = chem(names=[\"A\", \"B\", \"C\"]) # NOTE: Diffusion not applicable (using just 1 bin)\n",
"\n",
"\n",
"# Reaction A + B <-> C , with 1st-order kinetics for each species\n",
"chem_data.add_reaction(reactants=[\"A\" , \"B\"], products=[\"C\"],\n",
" forward_rate=5., reverse_rate=2.)\n",
"\n",
"chem_data.describe_reactions()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "b351573c-275c-434f-8301-4ed54197e0cc",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM STATE at Time t = 0:\n",
"1 bins and 3 species:\n",
" Species 0 (A). Diff rate: None. Conc: [10.]\n",
" Species 1 (B). Diff rate: None. Conc: [50.]\n",
" Species 2 (C). Diff rate: None. Conc: [20.]\n"
]
}
],
"source": [
"# Initialize the system\n",
"bio = BioSim1D(n_bins=1, chem_data=chem_data)\n",
"\n",
"bio.set_uniform_concentration(species_index=0, conc=10.)\n",
"bio.set_uniform_concentration(species_index=1, conc=50.)\n",
"bio.set_uniform_concentration(species_index=2, conc=20.)\n",
"\n",
"bio.describe_state()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "fdb1f449-8415-4fdf-b4a3-24220866c96c",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" B | \n",
" C | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0 | \n",
" 10.0 | \n",
" 50.0 | \n",
" 20.0 | \n",
" Initial state | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A B C caption\n",
"0 0 10.0 50.0 20.0 Initial state"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Save the state of the concentrations of all species at bin 0\n",
"bio.add_snapshot(bio.bin_snapshot(bin_address = 0), caption=\"Initial state\")\n",
"bio.get_history()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "25f70c0f-621e-413f-bc93-336d38d462d7",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[GRAPHIC ELEMENT SENT TO LOG FILE `reaction_4.log.htm`]\n"
]
}
],
"source": [
"# Send the plot to the HTML log file\n",
"graph_data = chem_data.prepare_graph_network()\n",
"GraphicLog.export_plot(graph_data, \"vue_cytoscape_1\")"
]
},
{
"cell_type": "markdown",
"id": "356e4db3-02a6-40bd-a951-841bfc6c5522",
"metadata": {
"tags": []
},
"source": [
"### First step"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "b8c0d439-13f7-459c-88e2-0ae357b46c18",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM STATE at Time t = 0.002:\n",
"1 bins and 3 species:\n",
" Species 0 (A). Diff rate: None. Conc: [5.08]\n",
" Species 1 (B). Diff rate: None. Conc: [45.08]\n",
" Species 2 (C). Diff rate: None. Conc: [24.92]\n"
]
}
],
"source": [
"# First step\n",
"bio.react(time_step=0.002, n_steps=1)\n",
"bio.describe_state()"
]
},
{
"cell_type": "markdown",
"id": "4c074e7c-0308-4085-a2f9-2da055ffcef8",
"metadata": {},
"source": [
"_Early in the reaction :_\n",
"[A] = 5.08 , [B] = 45.08 , [C] = [24.92]"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "386d8052-2d92-43b0-b817-ab4a1cce3ba0",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" B | \n",
" C | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.000 | \n",
" 10.00 | \n",
" 50.00 | \n",
" 20.00 | \n",
" Initial state | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.002 | \n",
" 5.08 | \n",
" 45.08 | \n",
" 24.92 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A B C caption\n",
"0 0.000 10.00 50.00 20.00 Initial state\n",
"1 0.002 5.08 45.08 24.92 "
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Save the state of the concentrations of all species at bin 0\n",
"bio.add_snapshot(bio.bin_snapshot(bin_address = 0))\n",
"bio.get_history()"
]
},
{
"cell_type": "markdown",
"id": "88ec4bcc-48dc-45eb-84fc-8e6e0b259612",
"metadata": {},
"source": [
"### Numerous more steps"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "8efdf9ef-bdca-48ff-b139-6e2d9952c1d8",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM STATE at Time t = 0.06:\n",
"1 bins and 3 species:\n",
" Species 0 (A). Diff rate: None. Conc: [0.29487831]\n",
" Species 1 (B). Diff rate: None. Conc: [40.29487831]\n",
" Species 2 (C). Diff rate: None. Conc: [29.70512169]\n"
]
}
],
"source": [
"# Numerous more steps\n",
"bio.react(time_step=0.002, n_steps=29, snapshots={\"sample_bin\": 0})\n",
"\n",
"bio.describe_state()"
]
},
{
"cell_type": "markdown",
"id": "6b0be45c-ff0e-43d8-847a-b6e8d0e6e0ec",
"metadata": {
"tags": []
},
"source": [
"### Equilibrium"
]
},
{
"cell_type": "markdown",
"id": "7f687d0d-75ab-4e29-8070-5b6f1fc80b4b",
"metadata": {},
"source": [
"Consistent with the 5/2 ratio of forward/reverse rates (and the 1st order reactions),\n",
"the systems settles in the following equilibrium: \n",
"[A] = 0.29487831 , [B] = 40.29487831 , [C] = 29.70512169"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "46a3ea5d-6516-4582-9958-6a80403e8f19",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"A + B <-> C\n",
"Final concentrations: [C] = 29.71 ; [A] = 0.2949 ; [B] = 40.29\n",
"1. Ratio of reactant/product concentrations, adjusted for reaction orders: 2.49999\n",
" Formula used: [C] / ([A][B])\n",
"2. Ratio of forward/reverse reaction rates: 2.5\n",
"Discrepancy between the two values: 0.0003107 %\n",
"Reaction IS in equilibrium (within 1% tolerance)\n",
"\n"
]
},
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Verify that the reaction has reached equilibrium\n",
"bio.reaction_dynamics.is_in_equilibrium(rxn_index=0, conc=bio.bin_snapshot(bin_address = 0))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "6975a1e8-d708-401f-ab7f-78c183f765bf",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" B | \n",
" C | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.000 | \n",
" 10.000000 | \n",
" 50.000000 | \n",
" 20.000000 | \n",
" Initial state | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.002 | \n",
" 5.080000 | \n",
" 45.080000 | \n",
" 24.920000 | \n",
" | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.004 | \n",
" 2.889616 | \n",
" 42.889616 | \n",
" 27.110384 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.006 | \n",
" 1.758712 | \n",
" 41.758712 | \n",
" 28.241288 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.008 | \n",
" 1.137262 | \n",
" 41.137262 | \n",
" 28.862738 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.010 | \n",
" 0.784874 | \n",
" 40.784874 | \n",
" 29.215126 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.012 | \n",
" 0.581625 | \n",
" 40.581625 | \n",
" 29.418375 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.014 | \n",
" 0.463266 | \n",
" 40.463266 | \n",
" 29.536734 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.016 | \n",
" 0.393960 | \n",
" 40.393960 | \n",
" 29.606040 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.018 | \n",
" 0.353248 | \n",
" 40.353248 | \n",
" 29.646752 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.020 | \n",
" 0.329288 | \n",
" 40.329288 | \n",
" 29.670712 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.022 | \n",
" 0.315171 | \n",
" 40.315171 | \n",
" 29.684829 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.024 | \n",
" 0.306849 | \n",
" 40.306849 | \n",
" 29.693151 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.026 | \n",
" 0.301940 | \n",
" 40.301940 | \n",
" 29.698060 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.028 | \n",
" 0.299045 | \n",
" 40.299045 | \n",
" 29.700955 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.030 | \n",
" 0.297336 | \n",
" 40.297336 | \n",
" 29.702664 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.032 | \n",
" 0.296328 | \n",
" 40.296328 | \n",
" 29.703672 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.034 | \n",
" 0.295734 | \n",
" 40.295734 | \n",
" 29.704266 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.036 | \n",
" 0.295383 | \n",
" 40.295383 | \n",
" 29.704617 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.038 | \n",
" 0.295176 | \n",
" 40.295176 | \n",
" 29.704824 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.040 | \n",
" 0.295053 | \n",
" 40.295053 | \n",
" 29.704947 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.042 | \n",
" 0.294981 | \n",
" 40.294981 | \n",
" 29.705019 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.044 | \n",
" 0.294939 | \n",
" 40.294939 | \n",
" 29.705061 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.046 | \n",
" 0.294914 | \n",
" 40.294914 | \n",
" 29.705086 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.048 | \n",
" 0.294899 | \n",
" 40.294899 | \n",
" 29.705101 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.050 | \n",
" 0.294890 | \n",
" 40.294890 | \n",
" 29.705110 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.052 | \n",
" 0.294885 | \n",
" 40.294885 | \n",
" 29.705115 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.054 | \n",
" 0.294882 | \n",
" 40.294882 | \n",
" 29.705118 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.056 | \n",
" 0.294880 | \n",
" 40.294880 | \n",
" 29.705120 | \n",
" | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.058 | \n",
" 0.294879 | \n",
" 40.294879 | \n",
" 29.705121 | \n",
" | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.060 | \n",
" 0.294878 | \n",
" 40.294878 | \n",
" 29.705122 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A B C caption\n",
"0 0.000 10.000000 50.000000 20.000000 Initial state\n",
"1 0.002 5.080000 45.080000 24.920000 \n",
"2 0.004 2.889616 42.889616 27.110384 \n",
"3 0.006 1.758712 41.758712 28.241288 \n",
"4 0.008 1.137262 41.137262 28.862738 \n",
"5 0.010 0.784874 40.784874 29.215126 \n",
"6 0.012 0.581625 40.581625 29.418375 \n",
"7 0.014 0.463266 40.463266 29.536734 \n",
"8 0.016 0.393960 40.393960 29.606040 \n",
"9 0.018 0.353248 40.353248 29.646752 \n",
"10 0.020 0.329288 40.329288 29.670712 \n",
"11 0.022 0.315171 40.315171 29.684829 \n",
"12 0.024 0.306849 40.306849 29.693151 \n",
"13 0.026 0.301940 40.301940 29.698060 \n",
"14 0.028 0.299045 40.299045 29.700955 \n",
"15 0.030 0.297336 40.297336 29.702664 \n",
"16 0.032 0.296328 40.296328 29.703672 \n",
"17 0.034 0.295734 40.295734 29.704266 \n",
"18 0.036 0.295383 40.295383 29.704617 \n",
"19 0.038 0.295176 40.295176 29.704824 \n",
"20 0.040 0.295053 40.295053 29.704947 \n",
"21 0.042 0.294981 40.294981 29.705019 \n",
"22 0.044 0.294939 40.294939 29.705061 \n",
"23 0.046 0.294914 40.294914 29.705086 \n",
"24 0.048 0.294899 40.294899 29.705101 \n",
"25 0.050 0.294890 40.294890 29.705110 \n",
"26 0.052 0.294885 40.294885 29.705115 \n",
"27 0.054 0.294882 40.294882 29.705118 \n",
"28 0.056 0.294880 40.294880 29.705120 \n",
"29 0.058 0.294879 40.294879 29.705121 \n",
"30 0.060 0.294878 40.294878 29.705122 "
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Save the state of the concentrations of all species at bin 0\n",
"bio.get_history()"
]
},
{
"cell_type": "markdown",
"id": "8a4576cc-d927-4776-a691-2001bba5d1b7",
"metadata": {},
"source": [
"## Note: \"A\" (now largely depleted) is largely the limiting reagent"
]
},
{
"cell_type": "markdown",
"id": "d82cb7fe-0bd2-4b3e-bbec-6f5b70d0e5ae",
"metadata": {
"tags": []
},
"source": [
"## Plots of changes of concentration with time"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "14d83e31-e46e-46aa-ac3a-5e45f3475bf0",
"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": "red",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "A",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.002,
0.004,
0.006,
0.008,
0.01,
0.012,
0.014,
0.016,
0.018000000000000002,
0.020000000000000004,
0.022000000000000006,
0.024000000000000007,
0.02600000000000001,
0.02800000000000001,
0.030000000000000013,
0.032000000000000015,
0.034000000000000016,
0.03600000000000002,
0.03800000000000002,
0.04000000000000002,
0.04200000000000002,
0.044000000000000025,
0.04600000000000003,
0.04800000000000003,
0.05000000000000003,
0.05200000000000003,
0.054000000000000034,
0.056000000000000036,
0.05800000000000004,
0.06000000000000004
],
"xaxis": "x",
"y": [
10,
5.08,
2.889616,
1.7587123297254401,
1.1372618579290796,
0.7848744219907284,
0.5816248769235214,
0.4632655516718558,
0.39396011908276785,
0.3532481852190526,
0.3292880755869499,
0.31517138668258465,
0.3068488164329863,
0.3019403326325966,
0.29904475860432483,
0.29733639845169046,
0.2963284041387654,
0.29573362363570993,
0.2953826559253961,
0.29517555379732074,
0.2950533439876077,
0.29498122825863154,
0.29493867279189473,
0.29491356077688685,
0.29489874213972356,
0.2948899976341194,
0.2948848374828887,
0.2948817924660286,
0.2948799955944733,
0.29487893525628817,
0.29487830954816896
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "B",
"line": {
"color": "violet",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "B",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.002,
0.004,
0.006,
0.008,
0.01,
0.012,
0.014,
0.016,
0.018000000000000002,
0.020000000000000004,
0.022000000000000006,
0.024000000000000007,
0.02600000000000001,
0.02800000000000001,
0.030000000000000013,
0.032000000000000015,
0.034000000000000016,
0.03600000000000002,
0.03800000000000002,
0.04000000000000002,
0.04200000000000002,
0.044000000000000025,
0.04600000000000003,
0.04800000000000003,
0.05000000000000003,
0.05200000000000003,
0.054000000000000034,
0.056000000000000036,
0.05800000000000004,
0.06000000000000004
],
"xaxis": "x",
"y": [
50,
45.08,
42.889616,
41.758712329725434,
41.137261857929076,
40.78487442199072,
40.58162487692351,
40.463265551671846,
40.393960119082756,
40.35324818521904,
40.32928807558694,
40.31517138668257,
40.306848816432975,
40.30194033263258,
40.29904475860431,
40.29733639845168,
40.29632840413875,
40.29573362363569,
40.29538265592538,
40.29517555379731,
40.2950533439876,
40.29498122825862,
40.294938672791886,
40.29491356077688,
40.294898742139715,
40.29488999763411,
40.294884837482876,
40.294881792466015,
40.29487999559446,
40.29487893525627,
40.29487830954815
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=C
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "C",
"line": {
"color": "green",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "C",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.002,
0.004,
0.006,
0.008,
0.01,
0.012,
0.014,
0.016,
0.018000000000000002,
0.020000000000000004,
0.022000000000000006,
0.024000000000000007,
0.02600000000000001,
0.02800000000000001,
0.030000000000000013,
0.032000000000000015,
0.034000000000000016,
0.03600000000000002,
0.03800000000000002,
0.04000000000000002,
0.04200000000000002,
0.044000000000000025,
0.04600000000000003,
0.04800000000000003,
0.05000000000000003,
0.05200000000000003,
0.054000000000000034,
0.056000000000000036,
0.05800000000000004,
0.06000000000000004
],
"xaxis": "x",
"y": [
20,
24.92,
27.110384000000003,
28.241287670274563,
28.862738142070924,
29.215125578009275,
29.418375123076483,
29.53673444832815,
29.606039880917237,
29.646751814780952,
29.670711924413055,
29.68482861331742,
29.693151183567018,
29.698059667367406,
29.70095524139568,
29.702663601548313,
29.703671595861238,
29.70426637636429,
29.704617344074606,
29.704824446202682,
29.704946656012396,
29.705018771741372,
29.70506132720811,
29.705086439223116,
29.705101257860278,
29.70511000236588,
29.70511516251711,
29.70511820753397,
29.705120004405526,
29.70512106474371,
29.70512169045183
],
"yaxis": "y"
}
],
"layout": {
"autosize": true,
"legend": {
"title": {
"text": "Chemical"
},
"tracegroupgap": 0
},
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "Reaction A + B <-> C . Changes in concentrations with time"
},
"xaxis": {
"anchor": "y",
"autorange": true,
"domain": [
0,
1
],
"range": [
0,
0.06000000000000004
],
"title": {
"text": "SYSTEM TIME"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"autorange": true,
"domain": [
0,
1
],
"range": [
-2.466517339921377,
52.76139564946955
],
"title": {
"text": "concentration"
},
"type": "linear"
}
}
},
"image/png": "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QMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAA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VUCYnSpnHAECBAgQIECAAAECBAgQIECAAAECBAhkExBmZ6NWiAABAgQIECBAgAABAgQIECBAgAABAgRSBYTZqXLGESBAgAABAgQIECBAgAABAgQIECBAgEA2AWF2NmqFCBAgQIAAAQIECBAgQIAAAQIECBAgQCBVQJidKmccAQIECBAgQIAAAQIECBAgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFVAmJ0qZxwBAgQIECBAgAABAgQIECBAgAABAgQIZBMQZmejVogAAQIECBAgQIAAAQIECBAgQIAAAQIEUgWE2alyxhEgQIAAAQIECBAgQIAAAQIECBAgQIBANgFhdjZqhQgQIECAAAECBAgQIECAAAECBAgQIEAgVUCYnSpnHAECBAgQIECAAAECBAgQIECAAAECBAhkExBmZ6NWiAABAgQIECBAgAABAgQIECBAgAABAgRSBYTZqXLGESBAgAABAgQIECBAgAABAgQIECBAgEA2AWF2NmqFCBAgQIAAAQIECBAgQIAAAQIECBAgQCBVQJidKmccAQIECBAgQIAAAQIECBAgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFVAmJ0qZxwBAgQIECBAgAABAgQIECBAgAABAgQIZBMQZmejVogAAQIECBAgQIAAAQIECBAgQIAAAQIEUgWE2alyxhEgQIAAAQIECBAgQIAAAQIECBAgQIBANgFhdjZqhQgQIECAAAECBAgQIECAAAECBAgQIEAgVUCYnSpnHAECBAgQIECAAAECBAgQIECAAAECBAhkExBmZ6NWiAABAgQIECBAgAABAgQIECBAgAABAgRSBYTZqXLGESBAgAABAgQIECBAgAABAgQIECBAgEA2AWF2NmqFCBAgQIAAAQIECBAgQIAAAQIECBAgQCBVQJidKmccAQIECBAgQIAAAQIECBAgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFXgP1ZFjsUftaLoAAAAAElFTkSuQmCC",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = px.line(data_frame=bio.get_history(), x=\"SYSTEM TIME\", y=[\"A\", \"B\", \"C\"], \n",
" title=\"Reaction A + B <-> C . Changes in concentrations with time\",\n",
" color_discrete_sequence = ['red', 'violet', 'green'],\n",
" labels={\"value\":\"concentration\", \"variable\":\"Chemical\"})\n",
"fig.show()"
]
},
{
"cell_type": "markdown",
"id": "ea1bbd14-90d4-480d-946c-f0ce30d61df1",
"metadata": {},
"source": [
"## For more in-depth analysis of this reaction, including variable time steps, see the experiment _\"reactions_single_compartment/react_3\"_ "
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "57b81064",
"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
}