{
"cells": [
{
"cell_type": "markdown",
"id": "54d8ecb1-ea4d-4985-9d5a-e838e264c308",
"metadata": {},
"source": [
"## One-bin `A <-> 2C + D`, with 1st-order kinetics for each species, taken to equilibrium\n",
"\n",
"Diffusion not applicable (just 1 bin)\n",
"\n",
"LAST REVISED: July 14, 2023"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "7d9e829a-3644-4769-8c4e-5596b678337f",
"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": "371d264e",
"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": "3c9c6dc0-8c6d-431d-a9d8-0a33780a2441",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-> Output will be LOGGED into the file 'reaction_5.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": "6ad40924-3c41-494f-8682-ec8efc540537",
"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: [4.]\n",
" Species 1 (C). Diff rate: None. Conc: [7.]\n",
" Species 2 (D). Diff rate: None. Conc: [2.]\n"
]
}
],
"source": [
"# Initialize the system\n",
"chem_data = chem(names=[\"A\", \"C\", \"D\"]) # NOTE: Diffusion not applicable (just 1 bin)\n",
"\n",
"\n",
"\n",
"# Reaction A <-> 2C + D , with 1st-order kinetics for each species\n",
"chem_data.add_reaction(reactants=[(\"A\")], products=[(2, \"C\") , (\"D\")],\n",
" forward_rate=5., reverse_rate=2.)\n",
"\n",
"bio = BioSim1D(n_bins=1, chem_data=chem_data)\n",
"\n",
"bio.set_all_uniform_concentrations( [4., 7., 2.] )\n",
"\n",
"bio.describe_state()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "e8ec69e3-dc27-4d6e-90d8-c5636dc061c8",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" C | \n",
" D | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0 | \n",
" 4.0 | \n",
" 7.0 | \n",
" 2.0 | \n",
" Initial state | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A C D caption\n",
"0 0 4.0 7.0 2.0 Initial state"
]
},
"execution_count": 5,
"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": 6,
"id": "2fec356a-3018-4ac9-9a09-066bd69c2098",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of reactions: 1 (at temp. 25 C)\n",
"0: A <-> 2 C + D (kF = 5 / kR = 2 / Delta_G = -2,271.45 / K = 2.5) | 1st order in all reactants & products\n"
]
}
],
"source": [
"chem_data.describe_reactions()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "8c9cea88-b766-4145-843b-9b109334d487",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[GRAPHIC ELEMENT SENT TO LOG FILE `reaction_5.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": "39837c2b-aa44-4a5f-b2a2-747b889ca9fc",
"metadata": {
"tags": []
},
"source": [
"### First step"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "8de0fb5d-419d-4976-b57d-b7656f7f0358",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM STATE at Time t = 0.2:\n",
"1 bins and 3 species:\n",
" Species 0 (A). Diff rate: None. Conc: [5.6]\n",
" Species 1 (C). Diff rate: None. Conc: [3.8]\n",
" Species 2 (D). Diff rate: None. Conc: [0.4]\n"
]
}
],
"source": [
"# First step\n",
"bio.react(time_step=0.2, n_steps=1)\n",
"bio.describe_state()"
]
},
{
"cell_type": "markdown",
"id": "a128c0ed-ed29-4fa9-ac8d-995df08cc60c",
"metadata": {},
"source": [
"--- \n",
" Note: the above values are quite inaccurate because of the large time step 0.2\n",
"\n",
" For example, the value for the concentration of D (0.4) is a wild overshot from the initial 2.0 to the equilibrium value of 1.68941267\n",
" \n",
" A more precise calculation with bio.react(time_step=0.1, n_steps=2) gives conc_D(0.2) = 2.304\n",
" \n",
" An even more precise calculation with bio.react(time_step=0.05, n_steps=4) gives conc_D(0.2) = 1.69037202\n",
" \n",
" I.e. the system is almost at equilibrium already at t=0.2 !\n",
" \n",
" TODO: explore the early dynamics of the system in a separate experiment\n",
"---"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "57bb972b-bf2e-492c-824a-49fe5b4d53a9",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" C | \n",
" D | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0 | \n",
" 4.0 | \n",
" 7.0 | \n",
" 2.0 | \n",
" Initial state | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.2 | \n",
" 5.6 | \n",
" 3.8 | \n",
" 0.4 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A C D caption\n",
"0 0.0 4.0 7.0 2.0 Initial state\n",
"1 0.2 5.6 3.8 0.4 "
]
},
"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": "6d201c6c-1cb7-4902-a3c3-d3f33514ffa7",
"metadata": {},
"source": [
"### Numerous more steps"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "19212806-2baa-43c6-8083-f3cbc4916d89",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM STATE at Time t = 1.7:\n",
"1 bins and 3 species:\n",
" Species 0 (A). Diff rate: None. Conc: [4.31058733]\n",
" Species 1 (C). Diff rate: None. Conc: [6.37882534]\n",
" Species 2 (D). Diff rate: None. Conc: [1.68941267]\n"
]
}
],
"source": [
"# Numerous more steps\n",
"bio.react(time_step=0.05, n_steps=30, snapshots={\"sample_bin\": 0})\n",
"\n",
"bio.describe_state()"
]
},
{
"cell_type": "markdown",
"id": "dd1dfc16-d0e0-446f-a02a-cbd6ec40db7b",
"metadata": {
"tags": []
},
"source": [
"### Equilibrium"
]
},
{
"cell_type": "markdown",
"id": "622e8969-dc8c-44ea-be61-05824b1f8d5c",
"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] = 4.31058733 , [C] = 6.37882534 , [D] = 1.68941267"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "52260eec-31d6-42a0-8ea9-a4122851c328",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"A <-> 2 C + D\n",
"Final concentrations: [C] = 6.379 ; [D] = 1.689 ; [A] = 4.311\n",
"1. Ratio of reactant/product concentrations, adjusted for reaction orders: 2.5\n",
" Formula used: ([C][D]) / [A]\n",
"2. Ratio of forward/reverse reaction rates: 2.5\n",
"Discrepancy between the two values: 0 %\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": "9c836591-3896-44ac-8d0b-6fc948411f2a",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" A | \n",
" C | \n",
" D | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.00 | \n",
" 4.000000 | \n",
" 7.000000 | \n",
" 2.000000 | \n",
" Initial state | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.20 | \n",
" 5.600000 | \n",
" 3.800000 | \n",
" 0.400000 | \n",
" | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.25 | \n",
" 4.352000 | \n",
" 6.296000 | \n",
" 1.648000 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.30 | \n",
" 4.301581 | \n",
" 6.396838 | \n",
" 1.698419 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.35 | \n",
" 4.312637 | \n",
" 6.374726 | \n",
" 1.687363 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.40 | \n",
" 4.310125 | \n",
" 6.379749 | \n",
" 1.689875 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.45 | \n",
" 4.310692 | \n",
" 6.378617 | \n",
" 1.689308 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.50 | \n",
" 4.310564 | \n",
" 6.378872 | \n",
" 1.689436 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.55 | \n",
" 4.310593 | \n",
" 6.378815 | \n",
" 1.689407 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.60 | \n",
" 4.310586 | \n",
" 6.378828 | \n",
" 1.689414 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.65 | \n",
" 4.310588 | \n",
" 6.378825 | \n",
" 1.689412 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.70 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.75 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.80 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.85 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.90 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.95 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 1.00 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 1.05 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 1.10 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 1.15 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 1.20 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 1.25 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 1.30 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 1.35 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 1.40 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 1.45 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 1.50 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 1.55 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 29 | \n",
" 1.60 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 30 | \n",
" 1.65 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
" | 31 | \n",
" 1.70 | \n",
" 4.310587 | \n",
" 6.378825 | \n",
" 1.689413 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME A C D caption\n",
"0 0.00 4.000000 7.000000 2.000000 Initial state\n",
"1 0.20 5.600000 3.800000 0.400000 \n",
"2 0.25 4.352000 6.296000 1.648000 \n",
"3 0.30 4.301581 6.396838 1.698419 \n",
"4 0.35 4.312637 6.374726 1.687363 \n",
"5 0.40 4.310125 6.379749 1.689875 \n",
"6 0.45 4.310692 6.378617 1.689308 \n",
"7 0.50 4.310564 6.378872 1.689436 \n",
"8 0.55 4.310593 6.378815 1.689407 \n",
"9 0.60 4.310586 6.378828 1.689414 \n",
"10 0.65 4.310588 6.378825 1.689412 \n",
"11 0.70 4.310587 6.378825 1.689413 \n",
"12 0.75 4.310587 6.378825 1.689413 \n",
"13 0.80 4.310587 6.378825 1.689413 \n",
"14 0.85 4.310587 6.378825 1.689413 \n",
"15 0.90 4.310587 6.378825 1.689413 \n",
"16 0.95 4.310587 6.378825 1.689413 \n",
"17 1.00 4.310587 6.378825 1.689413 \n",
"18 1.05 4.310587 6.378825 1.689413 \n",
"19 1.10 4.310587 6.378825 1.689413 \n",
"20 1.15 4.310587 6.378825 1.689413 \n",
"21 1.20 4.310587 6.378825 1.689413 \n",
"22 1.25 4.310587 6.378825 1.689413 \n",
"23 1.30 4.310587 6.378825 1.689413 \n",
"24 1.35 4.310587 6.378825 1.689413 \n",
"25 1.40 4.310587 6.378825 1.689413 \n",
"26 1.45 4.310587 6.378825 1.689413 \n",
"27 1.50 4.310587 6.378825 1.689413 \n",
"28 1.55 4.310587 6.378825 1.689413 \n",
"29 1.60 4.310587 6.378825 1.689413 \n",
"30 1.65 4.310587 6.378825 1.689413 \n",
"31 1.70 4.310587 6.378825 1.689413 "
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"bio.get_history()"
]
},
{
"cell_type": "markdown",
"id": "16c85241-2b62-4ac8-bd44-f6231f6ef685",
"metadata": {},
"source": [
"C and D get depleted, while A gets produced.\n",
"A wild overshoot is present at t=0.2"
]
},
{
"cell_type": "markdown",
"id": "c8219705-f08b-41c1-b585-9a01ff80f4ab",
"metadata": {
"tags": []
},
"source": [
"# Plots of changes of concentration with time"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "115692eb-8fc8-48b6-8f20-7053a7e9de54",
"metadata": {
"tags": []
},
"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": "navy",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "A",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.2,
0.25,
0.3,
0.35,
0.39999999999999997,
0.44999999999999996,
0.49999999999999994,
0.5499999999999999,
0.6,
0.65,
0.7000000000000001,
0.7500000000000001,
0.8000000000000002,
0.8500000000000002,
0.9000000000000002,
0.9500000000000003,
1.0000000000000002,
1.0500000000000003,
1.1000000000000003,
1.1500000000000004,
1.2000000000000004,
1.2500000000000004,
1.3000000000000005,
1.3500000000000005,
1.4000000000000006,
1.4500000000000006,
1.5000000000000007,
1.5500000000000007,
1.6000000000000008,
1.6500000000000008,
1.7000000000000008
],
"xaxis": "x",
"y": [
4,
5.6,
4.351999999999999,
4.3015808,
4.312636915785728,
4.310125447697398,
4.3106916519678125,
4.310563782331762,
4.310592648763124,
4.310586131626044,
4.31058760296257,
4.3105872707859065,
4.310587345779779,
4.310587328848781,
4.310587332671209,
4.310587331808239,
4.310587332003067,
4.3105873319590815,
4.310587331969011,
4.31058733196677,
4.310587331967276,
4.310587331967161,
4.310587331967187,
4.310587331967182,
4.3105873319671835,
4.310587331967183,
4.310587331967183,
4.310587331967183,
4.310587331967183,
4.310587331967183,
4.310587331967183,
4.310587331967183
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=C
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "C",
"line": {
"color": "violet",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "C",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.2,
0.25,
0.3,
0.35,
0.39999999999999997,
0.44999999999999996,
0.49999999999999994,
0.5499999999999999,
0.6,
0.65,
0.7000000000000001,
0.7500000000000001,
0.8000000000000002,
0.8500000000000002,
0.9000000000000002,
0.9500000000000003,
1.0000000000000002,
1.0500000000000003,
1.1000000000000003,
1.1500000000000004,
1.2000000000000004,
1.2500000000000004,
1.3000000000000005,
1.3500000000000005,
1.4000000000000006,
1.4500000000000006,
1.5000000000000007,
1.5500000000000007,
1.6000000000000008,
1.6500000000000008,
1.7000000000000008
],
"xaxis": "x",
"y": [
7,
3.8,
6.296,
6.3968384,
6.374726168428544,
6.379749104605204,
6.378616696064373,
6.378872435336473,
6.37881470247375,
6.378827736747909,
6.378824794074859,
6.378825458428185,
6.378825308440439,
6.378825342302434,
6.378825334657579,
6.37882533638352,
6.378825335993863,
6.378825336081833,
6.378825336061973,
6.378825336066456,
6.378825336065444,
6.378825336065673,
6.3788253360656215,
6.378825336065633,
6.37882533606563,
6.378825336065631,
6.378825336065631,
6.378825336065631,
6.378825336065631,
6.378825336065631,
6.378825336065631,
6.378825336065631
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=D
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "D",
"line": {
"color": "red",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "D",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.2,
0.25,
0.3,
0.35,
0.39999999999999997,
0.44999999999999996,
0.49999999999999994,
0.5499999999999999,
0.6,
0.65,
0.7000000000000001,
0.7500000000000001,
0.8000000000000002,
0.8500000000000002,
0.9000000000000002,
0.9500000000000003,
1.0000000000000002,
1.0500000000000003,
1.1000000000000003,
1.1500000000000004,
1.2000000000000004,
1.2500000000000004,
1.3000000000000005,
1.3500000000000005,
1.4000000000000006,
1.4500000000000006,
1.5000000000000007,
1.5500000000000007,
1.6000000000000008,
1.6500000000000008,
1.7000000000000008
],
"xaxis": "x",
"y": [
2,
0.3999999999999999,
1.6480000000000001,
1.6984192,
1.687363084214272,
1.6898745523026022,
1.6893083480321869,
1.6894362176682367,
1.6894073512368748,
1.6894138683739546,
1.6894123970374295,
1.6894127292140924,
1.6894126542202195,
1.689412671151217,
1.689412667328789,
1.6894126681917596,
1.689412667996931,
1.6894126680409165,
1.6894126680309862,
1.689412668033228,
1.689412668032722,
1.6894126680328363,
1.6894126680328105,
1.6894126680328163,
1.689412668032815,
1.6894126680328154,
1.6894126680328152,
1.6894126680328152,
1.6894126680328152,
1.6894126680328152,
1.6894126680328152,
1.6894126680328152
],
"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 <-> 2C + D . Changes in concentrations"
},
"xaxis": {
"anchor": "y",
"autorange": true,
"domain": [
0,
1
],
"range": [
0,
1.7000000000000008
],
"title": {
"text": "SYSTEM TIME"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"autorange": true,
"domain": [
0,
1
],
"range": [
0.03333333333333327,
7.366666666666666
],
"title": {
"text": "concentration"
},
"type": "linear"
}
}
},
"image/png": "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BCAAAQhAAAIQgAAEIIDMZg9AAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEICA9QSQ2dZHRIEQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCAzGYPQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAgPUEkNnWR0SBEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQggMxmD0AAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgID1BJDZ1kdEgRCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIIDMZg9AAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEICA9QSQ2dZHRIEQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCAzGYPQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAgPUEkNnWR0SBEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQggMxmD0AAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgID1BJDZ1kdEgRCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIIDMZg9AAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEICA9QSQ2dZHRIEQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCAzGYPQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAgPUEkNnWR0SBEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQggMxmD0AAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgID1BJDZ1kdEgRCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIIDMZg9AAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEICA9QSQ2dZHRIEQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCAzGYPQAACEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAgPUEkNnWR0SBEIAABCAAAQhAAAIQgAAEIAABCEAAAhCAAAQggMxmD0AAAhCAAAQgAAEIQAACEIAABCAAAQhAAAIQgID1BJDZ1kdEgRCAAAQgAAEIQAACEIAABCAAAQhAAAIQgAAEIIDMZg9AAAIQgAAEIAABCEAAAhCAAAQgAAEIQAACEICA9QSQ2dZHRIEQgAAEIAABCEAAAhCAAAQgAAEIQAACEIAABCCAzGYPQAACEIAABCAAAQhA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ESBAgAABAgQIECBAgAABAgQIECBAgEBtAsLs2qh1RIAAAQIECBAgQIAAAQIECBAgQIAAAQJlBYTZZeVcR4AAAQIECBAgQIAAAQIECBAgQIAAAQK1CQiza6PWEQECBAgQIECAAAECBAgQIECAAAECBAiUFRBml5VzHQECBAgQIECAAAECBAgQIECAAAECBAjUJiDMro1aRwQIECBAgAABAgQIECBAgAABAgQIECBQVkCYXVbOdQQIECBAgAABAgQIECBAgAABAgQIECBQm4AwuzZqHREgQIAAAQIECBAgQIAAAQIECBAgQIBAWQFhdlk51xEgQIAAAQIECBAgQIAAAQIECBAgQIBAbQLC7NqodUSAAAECBAgQIECAAAECBAgQIECAAAECZQWE2WXlXEeAAAECBAgQIECAAAECBAgQIECAAAECtQkIs2uj1hEBAgQIECBAgAABAgQIECBAgAABAgQIlBUQZpeVcx0BAgQIECBAgAABAgQIECBAgAABAgQI1CYgzK6NWkcECBAgQIAAAQIECBAgQIAAAQIECBAgUFZAmF1WznUECBAgQIAAAQIECBAgQIAAAQIECBAgUJuAMLs2ah0RIECAAAECBAgQIECAAAECBAgQIECAQFkBYXZZOdcRIECAAAECBAgQIECAAAECBAgQIECAQG0CwuzaqHVEgAABAgQIECBAgAABAgQIECBAgAABAmUFhNll5VxHgAABAgQIECBAgAABAgQIECBAgAABArUJCLNro9YRAQIECBAgQIAAAQIECBAgQIAAAQIECJQVEGaXlXMdAQIECBAgQIAAAQIECBAgQIAAAQIECNQmIMyujVpHBAgQIECAAAECBAgQIECAAAECBAgQIFBWQJhdVs51BAgQIECAAAECBAgQIECAAAECBAgQIFCbgDC7NmodESBAgAABAgQIECBAgAABAgQIECBAgEBZAWF2WTnXESBAgAABAgQIECBAgAABAgQIECBAgEBtAsLs2qh1RIAAAQIECBAgQIAAAQIECBAgQIAAAQJlBYTZZeVcR4AAAQIECBAgQIAAAQIECBAgQIAAAQK1CQiza6PWEQECBAgQIECAAAECBAgQIECAAAECBAiUFRBml5VzHQECBAgQIECAAAECBAgQIECAAAECBAjUJiDMro1aRwQIECBAgAABAgQIECBAgAABAgQIECBQVuD/A84jMAGElLrSAAAAAElFTkSuQmCC",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = px.line(data_frame=bio.get_history(), x=\"SYSTEM TIME\", y=[\"A\", \"C\", \"D\"], \n",
" title=\"Reaction A <-> 2C + D . Changes in concentrations\",\n",
" color_discrete_sequence = ['navy', 'violet', 'red'],\n",
" labels={\"value\":\"concentration\", \"variable\":\"Chemical\"})\n",
"fig.show()"
]
},
{
"cell_type": "markdown",
"id": "42921718-2075-4098-b55d-60a9df1e5f93",
"metadata": {},
"source": [
"### Notice the **wild overshoot** present at t=0.2 ! (Too large a time step, early in the reaction!)\n",
"Variable, adaptive time steps are explored at length in the _\"reactions_single_compartment\"_ experiments"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6b46289d",
"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
}