{
"cells": [
{
"cell_type": "markdown",
"id": "49bcb5b0-f19d-4b96-a5f1-e0ae30f66d8f",
"metadata": {},
"source": [
"## Exploration of variable time steps in the simulation of the coupled reactions `2 S <-> U` and `S <-> X` \n",
"Both mostly forward. 1st-order kinetics throughout. \n",
"\n",
"Based on the reactions and initial conditions of the experiment `up_regulate_3`\n",
"\n",
"LAST REVISED: Mar. 2, 2023"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "d9efa3fd-e95d-4e1c-878a-81ae932b2709",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Added 'D:\\Docs\\- MY CODE\\BioSimulations\\life123-Win7' to sys.path\n"
]
}
],
"source": [
"# Extend the sys.path variable, to contain the project's root directory\n",
"import set_path\n",
"set_path.add_ancestor_dir_to_syspath(2) # The number of levels to go up \n",
" # to reach the project's home, from the folder containing this notebook"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "01bae555-3dcf-42c1-bddc-9477a37f49f8",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"from experiments.get_notebook_info import get_notebook_basename\n",
"\n",
"from src.modules.reactions.reaction_data import ReactionData as chem\n",
"from src.modules.reactions.reaction_dynamics import ReactionDynamics\n",
"\n",
"import numpy as np\n",
"import plotly.express as px\n",
"from src.modules.visualization.graphic_log import GraphicLog"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "cc53849f-351d-49e0-bfa8-22f8d8e22f8e",
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-> Output will be LOGGED into the file 'variable_steps_1.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": "markdown",
"id": "d6d3ca49-589d-49b7-8424-37c7b01bcacf",
"metadata": {},
"source": [
"### Initialize the system"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "23c15e66-52e4-495b-aa3d-ecddd8d16942",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of reactions: 2 (at temp. 25 C)\n",
"0: 2 S <-> U (kF = 8 / kR = 2 / Delta_G = -3,436.56 / K = 4) | 1st order in all reactants & products\n",
"1: S <-> X (kF = 6 / kR = 3 / Delta_G = -1,718.28 / K = 2) | 1st order in all reactants & products\n",
"[GRAPHIC ELEMENT SENT TO LOG FILE `variable_steps_1.log.htm`]\n"
]
}
],
"source": [
"# Initialize the system\n",
"chem_data = chem(names=[\"U\", \"X\", \"S\"])\n",
"\n",
"# Reaction 2 S <-> U , with 1st-order kinetics for all species (mostly forward)\n",
"chem_data.add_reaction(reactants=[(2, \"S\")], products=\"U\",\n",
" forward_rate=8., reverse_rate=2.)\n",
"\n",
"# Reaction S <-> X , with 1st-order kinetics for all species (mostly forward)\n",
"chem_data.add_reaction(reactants=\"S\", products=\"X\",\n",
" forward_rate=6., reverse_rate=3.)\n",
"\n",
"chem_data.describe_reactions()\n",
"\n",
"# Send the plot of the reaction network 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": "d1d0eabb-b5b1-4e15-846d-5e483a5a24a7",
"metadata": {},
"source": [
"### Set the initial concentrations of all the chemicals"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "e80645d6-eb5b-4c78-8b46-ae126d2cb2cf",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"SYSTEM STATE at Time t = 0:\n",
"3 species:\n",
" Species 0 (U). Conc: 50.0\n",
" Species 1 (X). Conc: 100.0\n",
" Species 2 (S). Conc: 0.0\n"
]
}
],
"source": [
"dynamics = ReactionDynamics(reaction_data=chem_data)\n",
"dynamics.set_conc(conc={\"U\": 50., \"X\": 100., \"S\": 0.})\n",
"dynamics.describe_state()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "bcf652b8-e0dc-438e-bdbe-02216c1d52a0",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0 from the upcoming single step (for all rxns):\n",
" Baseline: [ 50. 100. 0.]\n",
" Deltas: [-1. -3. 5.]\n",
" Adjusted L2 norm: 1.9720265943665387\n",
"The current time step (0.01) leads to an 'L2 rate' (1.972) that is higher than the specified HIGH threshold (1.2):\n",
"ACTION: IMMEDIATE ABORT. Will abort this step, and re-do it with a SMALLER time interval. [The current step started at System Time: 0, and will rewind there]\n",
"reaction_step_orchestrator(): RE-DOING THE LAST REACTION STEP with the smaller time interval of 0.005\n",
"\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0 from the upcoming single step (for all rxns):\n",
" Baseline: [ 50. 100. 0.]\n",
" Deltas: [-0.5 -1.5 2.5]\n",
" Adjusted L2 norm: 0.9860132971832694\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.986) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.0025) at the next round! [The current step started at System Time: 0, and will continue to 0.005]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.005 with delta_time_full=0.0025\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.005 from the upcoming single step (for all rxns):\n",
" Baseline: [49.5 98.5 2.5]\n",
" Deltas: [-0.1975 -0.70125 1.09625]\n",
" Adjusted L2 norm: 0.43875098923598516\n",
"NOTICE: The chosen time step (0.0025) results in an 'L2 rate' (0.4388) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.005) at the next round! [The current step started at System Time: 0.005, and will continue to 0.0075]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.0075 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.0075 from the upcoming single step (for all rxns):\n",
" Baseline: [49.3025 97.79875 3.59625]\n",
" Deltas: [-0.349175 -1.35909375 2.05744375]\n",
" Adjusted L2 norm: 0.830136119114619\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.8301) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.0025) at the next round! [The current step started at System Time: 0.0075, and will continue to 0.0125]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.0125 with delta_time_full=0.0025\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.0125 from the upcoming single step (for all rxns):\n",
" Baseline: [48.953325 96.43965625 5.65369375]\n",
" Deltas: [-0.13169275 -0.63849202 0.90187752]\n",
" Adjusted L2 norm: 0.37094445340529236\n",
"NOTICE: The chosen time step (0.0025) results in an 'L2 rate' (0.3709) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.005) at the next round! [The current step started at System Time: 0.0125, and will continue to 0.015]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.015 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.015 from the upcoming single step (for all rxns):\n",
" Baseline: [48.82163225 95.80116423 6.55557127]\n",
" Deltas: [-0.22599347 -1.24035033 1.69233727]\n",
" Adjusted L2 norm: 0.7034476536211219\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.7034) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.015, and will continue to 0.02]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.02 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.02 from the upcoming single step (for all rxns):\n",
" Baseline: [48.59563878 94.56081391 8.24790853]\n",
" Deltas: [-0.15604005 -1.17097495 1.48305505]\n",
" Adjusted L2 norm: 0.6320146889296034\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.632) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.02, and will continue to 0.025]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.025 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.025 from the upcoming single step (for all rxns):\n",
" Baseline: [48.43959873 93.38983896 9.73096358]\n",
" Deltas: [-0.09515744 -1.10891868 1.29923357]\n",
" Adjusted L2 norm: 0.5702595342894922\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.5703) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.025, and will continue to 0.03]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.03 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.03 from the upcoming single step (for all rxns):\n",
" Baseline: [48.34444129 92.28092028 11.03019715]\n",
" Deltas: [-0.04223653 -1.05330789 1.13778094]\n",
" Adjusted L2 norm: 0.5170199771979221\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.517) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.03, and will continue to 0.035]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.035 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.035 from the upcoming single step (for all rxns):\n",
" Baseline: [48.30220476 91.22761239 12.16797809]\n",
" Deltas: [ 0.00369708 -1.00337484 0.99598069]\n",
" Adjusted L2 norm: 0.47125745282035797\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.4713) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.01) at the next round! [The current step started at System Time: 0.035, and will continue to 0.04]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.04 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.04 from the upcoming single step (for all rxns):\n",
" Baseline: [48.30590184 90.22423755 13.16395878]\n",
" Deltas: [ 0.08699867 -1.9168896 1.74289227]\n",
" Adjusted L2 norm: 0.8640799836300542\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.8641) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.005) at the next round! [The current step started at System Time: 0.04, and will continue to 0.05]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.05 with delta_time_full=0.005\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.05 from the upcoming single step (for all rxns):\n",
" Baseline: [48.3929005 88.30734795 14.90685105]\n",
" Deltas: [ 0.11234504 -0.87740469 0.65271461]\n",
" Adjusted L2 norm: 0.3664388323328886\n",
"NOTICE: The chosen time step (0.005) results in an 'L2 rate' (0.3664) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.01) at the next round! [The current step started at System Time: 0.05, and will continue to 0.055]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.055 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.055 from the upcoming single step (for all rxns):\n",
" Baseline: [48.50524554 87.42994326 15.55956566]\n",
" Deltas: [ 0.27466034 -1.68932436 1.14000367]\n",
" Adjusted L2 norm: 0.685473353555872\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.6855) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.055, and will continue to 0.065]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.065 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.065 from the upcoming single step (for all rxns):\n",
" Baseline: [48.77990588 85.7406189 16.69956934]\n",
" Deltas: [ 0.36036743 -1.57024441 0.84950955]\n",
" Adjusted L2 norm: 0.6071059448138537\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.6071) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.065, and will continue to 0.075]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.075 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.075 from the upcoming single step (for all rxns):\n",
" Baseline: [49.14027331 84.17037449 17.54907888]\n",
" Deltas: [ 0.42112084 -1.4721665 0.62992481]\n",
" Adjusted L2 norm: 0.551908028188212\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.5519) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.075, and will continue to 0.085]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.085 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.085 from the upcoming single step (for all rxns):\n",
" Baseline: [49.56139416 82.69820799 18.1790037 ]\n",
" Deltas: [ 0.46309241 -1.39020602 0.46402119]\n",
" Adjusted L2 norm: 0.512341359965445\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.5123) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.085, and will continue to 0.095]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.095 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.095 from the upcoming single step (for all rxns):\n",
" Baseline: [50.02448657 81.30800197 18.64302489]\n",
" Deltas: [ 0.49095226 -1.32065857 0.33875405]\n",
" Adjusted L2 norm: 0.4830375500460132\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.483) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.02) at the next round! [The current step started at System Time: 0.095, and will continue to 0.105]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.105 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.105 from the upcoming single step (for all rxns):\n",
" Baseline: [50.51543883 79.98734341 18.98177894]\n",
" Deltas: [ 1.01646708 -2.52142713 0.48849298]\n",
" Adjusted L2 norm: 0.920713822793345\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.9207) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.01) at the next round! [The current step started at System Time: 0.105, and will continue to 0.125]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.125 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.125 from the upcoming single step (for all rxns):\n",
" Baseline: [51.5319059 77.46591628 19.47027191]\n",
" Deltas: [ 0.52698364 -1.15576117 0.1017939 ]\n",
" Adjusted L2 norm: 0.424768909765701\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.4248) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.02) at the next round! [The current step started at System Time: 0.125, and will continue to 0.135]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.135 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.135 from the upcoming single step (for all rxns):\n",
" Baseline: [52.05888954 76.3101551 19.57206582]\n",
" Deltas: [ 1.04917495 -2.22996141 0.13161151]\n",
" Adjusted L2 norm: 0.8226527244153111\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.8227) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.01) at the next round! [The current step started at System Time: 0.135, and will continue to 0.155]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.155 with delta_time_full=0.01\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.155 from the upcoming single step (for all rxns):\n",
" Baseline: [53.10806449 74.08019369 19.70367733]\n",
" Deltas: [ 0.5141329 -1.04018517 0.01191938]\n",
" Adjusted L2 norm: 0.386790195376169\n",
"NOTICE: The chosen time step (0.01) results in an 'L2 rate' (0.3868) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.02) at the next round! [The current step started at System Time: 0.155, and will continue to 0.165]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.165 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.165 from the upcoming single step (for all rxns):\n",
" Baseline: [53.62219739 73.04000852 19.71559671]\n",
" Deltas: [ 1.00960758 -2.01652891 -0.00268625]\n",
" Adjusted L2 norm: 0.751716813419431\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.7517) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.165, and will continue to 0.185]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.185 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.185 from the upcoming single step (for all rxns):\n",
" Baseline: [54.63180496 71.02347962 19.71291046]\n",
" Deltas: [ 0.96879347 -1.89585952 -0.04172743]\n",
" Adjusted L2 norm: 0.7098188581459898\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.7098) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.185, and will continue to 0.205]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.205 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.205 from the upcoming single step (for all rxns):\n",
" Baseline: [55.60059844 69.12762009 19.67118303]\n",
" Deltas: [ 0.92336535 -1.78711524 -0.05961545]\n",
" Adjusted L2 norm: 0.6708152962620689\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.6708) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.205, and will continue to 0.225]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.225 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.225 from the upcoming single step (for all rxns):\n",
" Baseline: [56.52396378 67.34050485 19.61156758]\n",
" Deltas: [ 0.87689226 -1.68704218 -0.06674234]\n",
" Adjusted L2 norm: 0.6341666360749514\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.6342) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.225, and will continue to 0.245]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.245 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.245 from the upcoming single step (for all rxns):\n",
" Baseline: [57.40085605 65.65346267 19.54482524]\n",
" Deltas: [ 0.8311378 -1.59382873 -0.06844686]\n",
" Adjusted L2 norm: 0.5996077454037625\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.5996) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.245, and will continue to 0.265]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.265 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.265 from the upcoming single step (for all rxns):\n",
" Baseline: [58.23199384 64.05963394 19.47637838]\n",
" Deltas: [ 0.78694079 -1.50641263 -0.06746894]\n",
" Adjusted L2 norm: 0.5669711804381353\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.567) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.265, and will continue to 0.285]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.285 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.285 from the upcoming single step (for all rxns):\n",
" Baseline: [59.01893463 62.55322131 19.40890943]\n",
" Deltas: [ 0.74466812 -1.42412415 -0.0652121 ]\n",
" Adjusted L2 norm: 0.5361294223890068\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.5361) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.285, and will continue to 0.305]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.305 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.305 from the upcoming single step (for all rxns):\n",
" Baseline: [59.76360275 61.12909716 19.34369733]\n",
" Deltas: [ 0.70444746 -1.34650215 -0.06239278]\n",
" Adjusted L2 norm: 0.5069743721586161\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.507) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.305, and will continue to 0.325]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.325 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.325 from the upcoming single step (for all rxns):\n",
" Baseline: [60.46805022 59.78259501 19.28130456]\n",
" Deltas: [ 0.66628672 -1.27319915 -0.05937429]\n",
" Adjusted L2 norm: 0.47940928759927104\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.4794) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.04) at the next round! [The current step started at System Time: 0.325, and will continue to 0.345]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.345 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.345 from the upcoming single step (for all rxns):\n",
" Baseline: [61.13433694 58.50939586 19.22193027]\n",
" Deltas: [ 1.26027073 -2.40786424 -0.11267722]\n",
" Adjusted L2 norm: 0.9066904814971378\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.9067) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.02) at the next round! [The current step started at System Time: 0.345, and will continue to 0.385]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.385 with delta_time_full=0.02\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.385 from the upcoming single step (for all rxns):\n",
" Baseline: [62.39460767 56.10153162 19.10925305]\n",
" Deltas: [ 0.56169618 -1.07298153 -0.05041083]\n",
" Adjusted L2 norm: 0.40405351934013756\n",
"NOTICE: The chosen time step (0.02) results in an 'L2 rate' (0.4041) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.04) at the next round! [The current step started at System Time: 0.385, and will continue to 0.405]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.405 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.405 from the upcoming single step (for all rxns):\n",
" Baseline: [62.95630385 55.02855009 19.05884222]\n",
" Deltas: [ 1.0623252 -2.02930388 -0.09534652]\n",
" Adjusted L2 norm: 0.764177119158623\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.7642) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.405, and will continue to 0.445]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.445 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.445 from the upcoming single step (for all rxns):\n",
" Baseline: [64.01862905 52.99924621 18.96349569]\n",
" Deltas: [ 0.9468283 -1.80867058 -0.08498602]\n",
" Adjusted L2 norm: 0.6810935415626411\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.6811) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.445, and will continue to 0.485]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.485 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.485 from the upcoming single step (for all rxns):\n",
" Baseline: [64.96545735 51.19057563 18.87850968]\n",
" Deltas: [ 0.84388651 -1.61202675 -0.07574626]\n",
" Adjusted L2 norm: 0.6070431239872686\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.607) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.485, and will continue to 0.525]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.525 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.525 from the upcoming single step (for all rxns):\n",
" Baseline: [65.80934386 49.57854888 18.80276341]\n",
" Deltas: [ 0.75213678 -1.43676265 -0.06751092]\n",
" Adjusted L2 norm: 0.5410436794042834\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.541) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.525, and will continue to 0.565]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.565 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.565 from the upcoming single step (for all rxns):\n",
" Baseline: [66.56148064 48.14178623 18.73525249]\n",
" Deltas: [ 0.67036235 -1.28055375 -0.06017094]\n",
" Adjusted L2 norm: 0.4822198810778668\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.4822) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.08) at the next round! [The current step started at System Time: 0.565, and will continue to 0.605]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.605 with delta_time_full=0.08\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.605 from the upcoming single step (for all rxns):\n",
" Baseline: [67.23184299 46.86123248 18.67508155]\n",
" Deltas: [ 1.19495731 -2.28265665 -0.10725798]\n",
" Adjusted L2 norm: 0.8595831447977756\n",
"NOTICE: The chosen time step (0.08) results in an 'L2 rate' (0.8596) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL SMALLER by a factor 2.0 (set to (0.04) at the next round! [The current step started at System Time: 0.605, and will continue to 0.685]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.685 with delta_time_full=0.04\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.685 from the upcoming single step (for all rxns):\n",
" Baseline: [68.4268003 44.57857583 18.56782357]\n",
" Deltas: [ 0.46755952 -0.89315144 -0.0419676 ]\n",
" Adjusted L2 norm: 0.3363352629038791\n",
"NOTICE: The chosen time step (0.04) results in an 'L2 rate' (0.3363) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.08) at the next round! [The current step started at System Time: 0.685, and will continue to 0.725]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.725 with delta_time_full=0.08\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.725 from the upcoming single step (for all rxns):\n",
" Baseline: [68.89435982 43.68542439 18.52585598]\n",
" Deltas: [ 0.83345025 -1.59209098 -0.07480952]\n",
" Adjusted L2 norm: 0.5995358846406782\n",
"NOTICE: The chosen time step (0.08) results in an 'L2 rate' (0.5995) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.725, and will continue to 0.805]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.805 with delta_time_full=0.08\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.805 from the upcoming single step (for all rxns):\n",
" Baseline: [69.72781007 42.0933334 18.45104645]\n",
" Deltas: [ 0.65222012 -1.24589772 -0.05854252]\n",
" Adjusted L2 norm: 0.4691694121768126\n",
"NOTICE: The chosen time step (0.08) results in an 'L2 rate' (0.4692) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.16) at the next round! [The current step started at System Time: 0.805, and will continue to 0.885]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=0.885 with delta_time_full=0.16\n",
"EXAMINING CONCENTRATION CHANGES at System Time 0.885 from the upcoming single step (for all rxns):\n",
" Baseline: [70.38003019 40.84743568 18.39250394]\n",
" Deltas: [ 1.02079538 -1.94996535 -0.0916254 ]\n",
" Adjusted L2 norm: 0.7343011251253482\n",
"NOTICE: The chosen time step (0.16) results in an 'L2 rate' (0.7343) that leads to the following:\n",
"ACTION: COMPLETE NORMALLY - we're inside the target range. No change to step size. [The current step started at System Time: 0.885, and will continue to 1.045]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=1.045 with delta_time_full=0.16\n",
"EXAMINING CONCENTRATION CHANGES at System Time 1.045 from the upcoming single step (for all rxns):\n",
" Baseline: [71.40082557 38.89747033 18.30087853]\n",
" Deltas: [ 0.57686034 -1.10194237 -0.05177831]\n",
" Adjusted L2 norm: 0.4149599485210064\n",
"NOTICE: The chosen time step (0.16) results in an 'L2 rate' (0.415) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.32) at the next round! [The current step started at System Time: 1.045, and will continue to 1.205]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=1.205 with delta_time_full=0.32\n",
"EXAMINING CONCENTRATION CHANGES at System Time 1.205 from the upcoming single step (for all rxns):\n",
" Baseline: [71.97768591 37.79552796 18.24910022]\n",
" Deltas: [ 0.65197758 -1.24543442 -0.05852075]\n",
" Adjusted L2 norm: 0.46899494767126315\n",
"NOTICE: The chosen time step (0.32) results in an 'L2 rate' (0.469) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 0.64) at the next round! [The current step started at System Time: 1.205, and will continue to 1.525]\n",
"\n",
"reaction_step_orchestrator(): entering WHILE loop at System Time=1.525 with delta_time_full=0.64\n",
"EXAMINING CONCENTRATION CHANGES at System Time 1.525 from the upcoming single step (for all rxns):\n",
" Baseline: [72.62966349 36.55009354 18.19057947]\n",
" Deltas: [ 0.16979763 -0.32435443 -0.01524084]\n",
" Adjusted L2 norm: 0.12214259081733582\n",
"NOTICE: The chosen time step (0.64) results in an 'L2 rate' (0.1221) that leads to the following:\n",
"ACTION: COMPLETE STEP NORMALLY and MAKE THE INTERVAL LARGER by a factor 2 (set to 1.28) at the next round! [The current step started at System Time: 1.525, and will continue to 2.165]\n",
"44 total step(s) taken\n"
]
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" SYSTEM TIME | \n",
" U | \n",
" X | \n",
" S | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0000 | \n",
" 50.000000 | \n",
" 100.000000 | \n",
" 0.000000 | \n",
" Initial state | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.0050 | \n",
" 49.500000 | \n",
" 98.500000 | \n",
" 2.500000 | \n",
" | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.0075 | \n",
" 49.302500 | \n",
" 97.798750 | \n",
" 3.596250 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.0125 | \n",
" 48.953325 | \n",
" 96.439656 | \n",
" 5.653694 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.0150 | \n",
" 48.821632 | \n",
" 95.801164 | \n",
" 6.555571 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.0200 | \n",
" 48.595639 | \n",
" 94.560814 | \n",
" 8.247909 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.0250 | \n",
" 48.439599 | \n",
" 93.389839 | \n",
" 9.730964 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.0300 | \n",
" 48.344441 | \n",
" 92.280920 | \n",
" 11.030197 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.0350 | \n",
" 48.302205 | \n",
" 91.227612 | \n",
" 12.167978 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.0400 | \n",
" 48.305902 | \n",
" 90.224238 | \n",
" 13.163959 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.0500 | \n",
" 48.392901 | \n",
" 88.307348 | \n",
" 14.906851 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.0550 | \n",
" 48.505246 | \n",
" 87.429943 | \n",
" 15.559566 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.0650 | \n",
" 48.779906 | \n",
" 85.740619 | \n",
" 16.699569 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.0750 | \n",
" 49.140273 | \n",
" 84.170374 | \n",
" 17.549079 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.0850 | \n",
" 49.561394 | \n",
" 82.698208 | \n",
" 18.179004 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.0950 | \n",
" 50.024487 | \n",
" 81.308002 | \n",
" 18.643025 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.1050 | \n",
" 50.515439 | \n",
" 79.987343 | \n",
" 18.981779 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.1250 | \n",
" 51.531906 | \n",
" 77.465916 | \n",
" 19.470272 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.1350 | \n",
" 52.058890 | \n",
" 76.310155 | \n",
" 19.572066 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.1550 | \n",
" 53.108064 | \n",
" 74.080194 | \n",
" 19.703677 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.1650 | \n",
" 53.622197 | \n",
" 73.040009 | \n",
" 19.715597 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.1850 | \n",
" 54.631805 | \n",
" 71.023480 | \n",
" 19.712910 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.2050 | \n",
" 55.600598 | \n",
" 69.127620 | \n",
" 19.671183 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.2250 | \n",
" 56.523964 | \n",
" 67.340505 | \n",
" 19.611568 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.2450 | \n",
" 57.400856 | \n",
" 65.653463 | \n",
" 19.544825 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.2650 | \n",
" 58.231994 | \n",
" 64.059634 | \n",
" 19.476378 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.2850 | \n",
" 59.018935 | \n",
" 62.553221 | \n",
" 19.408909 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.3050 | \n",
" 59.763603 | \n",
" 61.129097 | \n",
" 19.343697 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.3250 | \n",
" 60.468050 | \n",
" 59.782595 | \n",
" 19.281305 | \n",
" | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.3450 | \n",
" 61.134337 | \n",
" 58.509396 | \n",
" 19.221930 | \n",
" | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.3850 | \n",
" 62.394608 | \n",
" 56.101532 | \n",
" 19.109253 | \n",
" | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.4050 | \n",
" 62.956304 | \n",
" 55.028550 | \n",
" 19.058842 | \n",
" | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.4450 | \n",
" 64.018629 | \n",
" 52.999246 | \n",
" 18.963496 | \n",
" | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.4850 | \n",
" 64.965457 | \n",
" 51.190576 | \n",
" 18.878510 | \n",
" | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.5250 | \n",
" 65.809344 | \n",
" 49.578549 | \n",
" 18.802763 | \n",
" | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.5650 | \n",
" 66.561481 | \n",
" 48.141786 | \n",
" 18.735252 | \n",
" | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.6050 | \n",
" 67.231843 | \n",
" 46.861232 | \n",
" 18.675082 | \n",
" | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.6850 | \n",
" 68.426800 | \n",
" 44.578576 | \n",
" 18.567824 | \n",
" | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.7250 | \n",
" 68.894360 | \n",
" 43.685424 | \n",
" 18.525856 | \n",
" | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.8050 | \n",
" 69.727810 | \n",
" 42.093333 | \n",
" 18.451046 | \n",
" | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.8850 | \n",
" 70.380030 | \n",
" 40.847436 | \n",
" 18.392504 | \n",
" | \n",
"
\n",
" \n",
" | 41 | \n",
" 1.0450 | \n",
" 71.400826 | \n",
" 38.897470 | \n",
" 18.300879 | \n",
" | \n",
"
\n",
" \n",
" | 42 | \n",
" 1.2050 | \n",
" 71.977686 | \n",
" 37.795528 | \n",
" 18.249100 | \n",
" | \n",
"
\n",
" \n",
" | 43 | \n",
" 1.5250 | \n",
" 72.629663 | \n",
" 36.550094 | \n",
" 18.190579 | \n",
" | \n",
"
\n",
" \n",
" | 44 | \n",
" 2.1650 | \n",
" 72.799461 | \n",
" 36.225739 | \n",
" 18.175339 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SYSTEM TIME U X S caption\n",
"0 0.0000 50.000000 100.000000 0.000000 Initial state\n",
"1 0.0050 49.500000 98.500000 2.500000 \n",
"2 0.0075 49.302500 97.798750 3.596250 \n",
"3 0.0125 48.953325 96.439656 5.653694 \n",
"4 0.0150 48.821632 95.801164 6.555571 \n",
"5 0.0200 48.595639 94.560814 8.247909 \n",
"6 0.0250 48.439599 93.389839 9.730964 \n",
"7 0.0300 48.344441 92.280920 11.030197 \n",
"8 0.0350 48.302205 91.227612 12.167978 \n",
"9 0.0400 48.305902 90.224238 13.163959 \n",
"10 0.0500 48.392901 88.307348 14.906851 \n",
"11 0.0550 48.505246 87.429943 15.559566 \n",
"12 0.0650 48.779906 85.740619 16.699569 \n",
"13 0.0750 49.140273 84.170374 17.549079 \n",
"14 0.0850 49.561394 82.698208 18.179004 \n",
"15 0.0950 50.024487 81.308002 18.643025 \n",
"16 0.1050 50.515439 79.987343 18.981779 \n",
"17 0.1250 51.531906 77.465916 19.470272 \n",
"18 0.1350 52.058890 76.310155 19.572066 \n",
"19 0.1550 53.108064 74.080194 19.703677 \n",
"20 0.1650 53.622197 73.040009 19.715597 \n",
"21 0.1850 54.631805 71.023480 19.712910 \n",
"22 0.2050 55.600598 69.127620 19.671183 \n",
"23 0.2250 56.523964 67.340505 19.611568 \n",
"24 0.2450 57.400856 65.653463 19.544825 \n",
"25 0.2650 58.231994 64.059634 19.476378 \n",
"26 0.2850 59.018935 62.553221 19.408909 \n",
"27 0.3050 59.763603 61.129097 19.343697 \n",
"28 0.3250 60.468050 59.782595 19.281305 \n",
"29 0.3450 61.134337 58.509396 19.221930 \n",
"30 0.3850 62.394608 56.101532 19.109253 \n",
"31 0.4050 62.956304 55.028550 19.058842 \n",
"32 0.4450 64.018629 52.999246 18.963496 \n",
"33 0.4850 64.965457 51.190576 18.878510 \n",
"34 0.5250 65.809344 49.578549 18.802763 \n",
"35 0.5650 66.561481 48.141786 18.735252 \n",
"36 0.6050 67.231843 46.861232 18.675082 \n",
"37 0.6850 68.426800 44.578576 18.567824 \n",
"38 0.7250 68.894360 43.685424 18.525856 \n",
"39 0.8050 69.727810 42.093333 18.451046 \n",
"40 0.8850 70.380030 40.847436 18.392504 \n",
"41 1.0450 71.400826 38.897470 18.300879 \n",
"42 1.2050 71.977686 37.795528 18.249100 \n",
"43 1.5250 72.629663 36.550094 18.190579 \n",
"44 2.1650 72.799461 36.225739 18.175339 "
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n",
"dynamics.verbose_list = [\"substeps\", \"variable_steps\"]\n",
"\n",
"dynamics.single_compartment_react(time_step=0.01, stop_time=2., \n",
" variable_steps=True, thresholds={\"low\": 0.5, \"high\": 0.8})\n",
"\n",
"df = dynamics.get_history()\n",
"df"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "12da63da-9b3b-4c43-a68b-7dfb6585b9d0",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"From time 0 to 0.005, in 1 reduced step of 0.005 (1/2 of requested step)\n",
"From time 0.005 to 0.0075, in 1 FULL step of 0.0025\n",
"From time 0.0075 to 0.0125, in 1 FULL step of 0.005\n",
"From time 0.0125 to 0.015, in 1 FULL step of 0.0025\n",
"From time 0.015 to 0.04, in 5 FULL steps of 0.005\n",
"From time 0.04 to 0.05, in 1 FULL step of 0.01\n",
"From time 0.05 to 0.055, in 1 FULL step of 0.005\n",
"From time 0.055 to 0.105, in 5 FULL steps of 0.01\n",
"From time 0.105 to 0.125, in 1 FULL step of 0.02\n",
"From time 0.125 to 0.135, in 1 FULL step of 0.01\n",
"From time 0.135 to 0.155, in 1 FULL step of 0.02\n",
"From time 0.155 to 0.165, in 1 FULL step of 0.01\n",
"From time 0.165 to 0.345, in 9 FULL steps of 0.02\n",
"From time 0.345 to 0.385, in 1 FULL step of 0.04\n",
"From time 0.385 to 0.405, in 1 FULL step of 0.02\n",
"From time 0.405 to 0.605, in 5 FULL steps of 0.04\n",
"From time 0.605 to 0.685, in 1 FULL step of 0.08\n",
"From time 0.685 to 0.725, in 1 FULL step of 0.04\n",
"From time 0.725 to 0.885, in 2 FULL steps of 0.08\n",
"From time 0.885 to 1.205, in 2 FULL steps of 0.16\n",
"From time 1.205 to 1.525, in 1 FULL step of 0.32\n",
"From time 1.525 to 2.165, in 1 FULL step of 0.64\n"
]
}
],
"source": [
"(transition_times, step_sizes) = dynamics.explain_time_advance(return_times=True)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "438e4ec0-44f7-4c0d-b6a6-4a435da6e683",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([0.005 , 0.0025, 0.005 , 0.0025, 0.005 , 0.01 , 0.005 , 0.01 ,\n",
" 0.02 , 0.01 , 0.02 , 0.01 , 0.02 , 0.04 , 0.02 , 0.04 ,\n",
" 0.08 , 0.04 , 0.08 , 0.16 , 0.32 , 0.64 ])"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.array(step_sizes)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "74d500e5-0b59-419c-90ae-4948eb7c8611",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([0. , 0.005 , 0.0075, 0.0125, 0.015 , 0.04 , 0.05 , 0.055 ,\n",
" 0.105 , 0.125 , 0.135 , 0.155 , 0.165 , 0.345 , 0.385 , 0.405 ,\n",
" 0.605 , 0.685 , 0.725 , 0.885 , 1.205 , 1.525 , 2.165 ])"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"np.array(transition_times) # Note: there will be one more transition time (the end time) than step sizes"
]
},
{
"cell_type": "markdown",
"id": "cbf6c9c7-8cec-400f-9e70-49ff1a9f485c",
"metadata": {
"tags": []
},
"source": [
"## Plots of changes of concentration with time"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "c388dae7-c4a6-4644-a390-958e3862d102",
"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=U
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "U",
"line": {
"color": "green",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "U",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
50,
49.5,
49.3025,
48.953325,
48.82163225,
48.595638778125,
48.439598731740624,
48.34444128763423,
48.30220476057483,
48.30590183654385,
48.39290050226037,
48.5052455391863,
48.7799058814107,
49.14027331067588,
49.56139415522215,
50.02448656789047,
50.51543882771388,
51.5319059043599,
52.05888953946266,
53.10806448877514,
53.6221973851961,
54.631804962718874,
55.60059843741017,
56.52396378475239,
57.400856045782184,
58.231993841938426,
59.018934628561645,
59.76360275298115,
60.468050216020096,
61.13433693633931,
62.39460766762712,
62.95630384813689,
64.01862904935517,
64.96545734689445,
65.8093438554794,
66.56148063896055,
67.23184298514343,
68.4268002988057,
68.89435981841929,
69.72781007217334,
70.38003019051833,
71.40082556698592,
71.97768590721373,
72.62966349214221,
72.7994611238083
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "X",
"line": {
"color": "orange",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "X",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
100,
98.5,
97.79875,
96.43965625,
95.801164234375,
94.56081390882812,
93.38983895624335,
92.28092027930796,
91.22761238948105,
90.22423754631991,
88.30734794676586,
87.42994325902578,
85.7406189010111,
84.17037449415082,
82.69820799239614,
81.30800197445382,
79.98734340860611,
77.46591627640568,
76.31015510300598,
74.08019369499387,
73.0400085237914,
71.02347961706188,
69.12762009493821,
67.34050485287088,
65.65346267101354,
64.05963393924337,
62.55322130811434,
61.12909716179896,
59.782595011959664,
58.5093958579621,
56.10153161965286,
55.02855008788483,
52.99924620914057,
51.19057563015947,
49.578548876792716,
48.14178623051722,
46.86123248082995,
44.57857582889467,
43.685424387065844,
42.0933334026959,
40.84743568346842,
38.897470333478665,
37.79552796465638,
36.5500935427452,
36.2257391168805
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "S",
"line": {
"color": "blue",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "S",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
0,
2.5,
3.59625,
5.65369375,
6.555571265625001,
8.247908534921876,
9.730963580275391,
11.03019714542356,
12.167978089369273,
13.163958780592365,
14.906851048713396,
15.559565662601617,
16.699569336167485,
17.5490788844974,
18.179003697159533,
18.643024889765208,
18.981778935966094,
19.470271914874488,
19.572065818068666,
19.703677327455825,
19.715596705816367,
19.712910457500335,
19.671183030241412,
19.611567577624296,
19.54482523742205,
19.476378376879737,
19.40890943476233,
19.343697332238698,
19.2813045560001,
19.221930269359245,
19.10925304509285,
19.058842215841338,
18.963495692149042,
18.878509676051582,
18.80276341224844,
18.735252491561642,
18.67508154888315,
18.56782357349389,
18.52585597609554,
18.451046452957367,
18.392503935494886,
18.300878532549454,
18.24910022091612,
18.190579472970335,
18.17533863550288
],
"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": "Changes in concentration for `2 S <-> U` and `S <-> X`"
},
"xaxis": {
"anchor": "y",
"autorange": true,
"domain": [
0,
1
],
"range": [
0,
2.165
],
"title": {
"text": "SYSTEM TIME"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"autorange": true,
"domain": [
0,
1
],
"range": [
-5.555555555555555,
105.55555555555556
],
"title": {
"text": "concentration"
},
"type": "linear"
}
}
},
"image/png": "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xeo4DQEEEgo0+t2r/Z/laFld/XnnrJF7brsm4ZUohgAC7QhEH2uu61myaIRNSNsB5VwEEgo0+t3jv5MJESmGQEoCYeAbVz37KqWETrWpCxAqpU7MBRBAAAEEEEAAAQQQQAABBBBAAIH8CRAq5W9M6RECCCCAAAIIIIAAAggggAACCCCQugChUurEXAABBBBAAAEEEEAAAQQQQAABBBDInwChUv7GlB4hgAACCCCAAAIIIIAAAggggAACqQsQKqVOzAUQQAABBBBAAAEEEEAAAQQQQACB/AkQKuVvTOkRAggggAACCCCAAAIIIIAAAgggkLoAoVLqxFwAAQQQQAABBBBAAAEEEEAAAQQQyJ8AoVL+xpQeIYAAAggggAACCCCAAAIIIIAAAqkLECqlTswFEEAAAQQQQAABBBBAAAEEEEAAgfwJECrlb0zpEQIIIIAAAggggAACCCCAAAIIIJC6AKFS6sRcAAEEEEAAAQQQQAABBBBAAAEEEMifAKFS/saUHiGAAAIIIIAAAggggAACCCCAAAKpCxAqpU7MBRBAAAEEEEAAAQQQQAABBBBAAIH8CRAq5W9M6RECCCCAAAIIIIAAAggggAACCCCQugChUurEXAABBBBAAAEEEEAAAQQQQAABBBDInwChUv7GlB4hgAACCCCAAAIIIIAAAggggAACqQsQKqVOzAUQQAABBBBAAAEEEEAAAQQQQACB/AkQKuVvTOkRAggggAACCCCAAAIIIIAAAgggkLoAoVLqxFwAAQQQQAABBBBAAAEEEEAAAQQQyJ8AoVL+xpQeIYAAAggg4ETg9ru/LHd+8aE517ri0ovkqo9/SNZvvCr42WNbbp9TRv9syaIF8uDmTcHPmtV19rsva9inJYtGgut87Opb5ImntsWW3XTt5bJxwzr54GU3yPaduyT8Piy85euPyw033yWrV66YaVdtRUnase7ctfLQN749c+pF73unfOb6TxhdN0k/nAwyF0EAAQQQQAABBBoIECpxeyCAAAIIIICAsUAYetx3x42yds2qmfN1OPStx/5lJpTRIcx556yRe267ZqbMdZ/+gjz+5NaZsClpXbXhT20opH+u69q771DdUEiXCUOl2naFrzcKlaJQYQgV1464n5lcN0k/jAeNExBAAAEEEEAAAcsChEqWQakOAQQQQACBIgjosCicgdOov7XhytZtO+TiK2+aNUsoaV02Q6WlSxYEM5rCUCxslw6amoVSSdpRL1RKel1CpSL8FtFHBBBAAAEEsi9AqJT9MaQHCCCAAAIIOBfQy9fetOrkWTOQ6jVCByTP7HgpmJmkZ+voYCU6c8mkLn2NRjOEkoQxug1nnXmavPL6fjlh2eJgaZqePaUP/VqaoVLS6ybph/NB54IIIIAAAggggECNAKEStwQCCCCAAAIIGAuEwU54YrinUb2KonsRPf3o5lnFTOtqFiol2VNJhzvnnXNWsIeSbo9un5619Lm/+OvUQ6Uk12VPJeNbkhMQQAABBBBAoAMChEodQOeSCCCAAAII5EkgXDoW9iluWVwYBIWbeNfrv0ld7eyppEOlcPNs3ZZw9pTJDKFW9lRKel2TduTpXqIvCCCAAAIIIJAtAUKlbI0XrUUAAQQQQMBrAb2MTD/5rHY2UtxeSs06Uq+uZjOVmi1fC5e/6VApfOpcGFCZhDnthErNrmvSjmaO/BwBBBBAAAEEEEhLgFApLVnqRQABBBBAIKcCOiD60le+Fcz0qT3CsKT2qXD1QqVW6rIZKun26z2d9H5P+jAJc9oJlZpd16QdOb3N6BYCCCCAAAIIZECAUCkDg0QTEUAAAQQQ8EkgukQtOiMp+gS16Ebcuu2NQiX9NDh9JK3LdqgUtTUJc9oNlRpd16QdPt0btAUBBBBAAAEEiiVAqFSs8aa3CCCAAAIIWBOIbr4dVlpvz6Rmy99M6moWKiXdqDtuppVJmFOvHeGyvdAk3GMquuyudhBqr8tG3dZuUypCAAEEEEAAgRQFCJVSxKVqBBBAAAEEEEAAAQQQQAABBBBAIK8ChEp5HVn6hQACCCCAAAIIIIAAAggggAACCKQoQKiUIi5VI4AAAggggAACCCCAAAIIIIAAAnkVIFTK68jSLwQQQAABBBBAAAEEEEAAAQQQQCBFAUKlFHGpGgEEEEAAAQQQQAABBBBAAAEEEMirAKFSXkeWfiGAAAIIIIAAAggggAACCCCAAAIpChAqpYhL1QgggAACCCCAAAIIIIAAAggggEBeBQiV8jqy9AsBBBBAAAEEEEAAAQQQQAABBBBIUYBQKUVcqkYAAQQQQAABBBBAAAEEEEAAAQTyKkColNeRpV8IIIAAAggggAACCCCAAAIIIIBAigKESiniUjUCCCCAAAIIIIAAAggggAACCCCQVwFCpbyOLP1CAAEEEEAAAQQQQAABBBBAAAEEUhQgVEoRl6oRQAABBBBAAAEEEEAAAQQQQACBvAoQKuV1ZOkXAggggAACCCCAAAIIIIAAAgggkKIAoVKKuFSNAAIIIIAAAggggAACCCCAAAII5FWAUCmvI0u/EEAAAQQQQAABBBBAAAEEEEAAgRQFCJVSxKVqBBBAAAEEEEAAAQQQQAABBBBAIK8ChEp5HVn6hQACCCCAAAIIIIAAAggggAACCKQoQKiUIi5VI4AAAggggAACCCCAAAIIIIAAAnkVIFTK68jSLwQQQAABBBBAAAEEEEAAAQQQQCBFAUKlFHGpGgEEEEAAAQQQQAABBBBAAAEEEMirAKFSXkeWfiGAAAIIIIAAAggggAACCCCAAAIpChAqpYhL1QgggAACCCCAAAIIIIAAAggggEBeBQiV8jqy9AsBBBBAAAEEEEAAAQQQQAABBBBIUYBQKUVcqkYAAQQQQAABBBBAAAEEEEAAAQTyKkColNeRpV8IIIAAAggggAACCCCAAAIIIIBAigKESiniUjUCCCCAAAIIIIAAAggggAACCCCQVwFCpbyOLP1CAAEEEEAAAQQQQAABBBBAAAEEUhQgVEoRl6oRQAABBBBAAAEEEEAAAQQQQACBvAoQKuV1ZOkXAggggAACCCCAAAIIIIAAAgggkKIAoVKKuFSNAAIIIIAAAggggAACCCCAAAII5FWAUCmvI0u/EEAAAQQQQAABBBBAAAEEEEAAgRQFCJVSxKVqBBBAAAEEEEAAAQQQQAABBBBAIK8ChEp5HVn6hQACCCCAAAIIIIAAAggggAACCKQoQKiUIi5VI4AAAggggAACCCCAAAIIIIAAAnkVIFTK68jSLwQQQAABBBBAAAEEEEAAAQQQQCBFAUKlFHGpGgEEEEAAAQQQQAABBBBAAAEEEMirAKFSXkeWfiGAAAIIIIAAAggggAACCCCAAAIpCvz/YqmAPorsclMAAAAASUVORK5CYII=",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"dynamics.plot_curves(colors=['green', 'orange', 'blue'])"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "a264d96b-31de-493d-9e92-742a84b4a453",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "Chemical=U
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "U",
"line": {
"color": "green",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "U",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
50,
49.5,
49.3025,
48.953325,
48.82163225,
48.595638778125,
48.439598731740624,
48.34444128763423,
48.30220476057483,
48.30590183654385,
48.39290050226037,
48.5052455391863,
48.7799058814107,
49.14027331067588,
49.56139415522215,
50.02448656789047,
50.51543882771388,
51.5319059043599,
52.05888953946266,
53.10806448877514,
53.6221973851961,
54.631804962718874,
55.60059843741017,
56.52396378475239,
57.400856045782184,
58.231993841938426,
59.018934628561645,
59.76360275298115,
60.468050216020096,
61.13433693633931,
62.39460766762712,
62.95630384813689,
64.01862904935517,
64.96545734689445,
65.8093438554794,
66.56148063896055,
67.23184298514343,
68.4268002988057,
68.89435981841929,
69.72781007217334,
70.38003019051833,
71.40082556698592,
71.97768590721373,
72.62966349214221,
72.7994611238083
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "X",
"line": {
"color": "orange",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "X",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
100,
98.5,
97.79875,
96.43965625,
95.801164234375,
94.56081390882812,
93.38983895624335,
92.28092027930796,
91.22761238948105,
90.22423754631991,
88.30734794676586,
87.42994325902578,
85.7406189010111,
84.17037449415082,
82.69820799239614,
81.30800197445382,
79.98734340860611,
77.46591627640568,
76.31015510300598,
74.08019369499387,
73.0400085237914,
71.02347961706188,
69.12762009493821,
67.34050485287088,
65.65346267101354,
64.05963393924337,
62.55322130811434,
61.12909716179896,
59.782595011959664,
58.5093958579621,
56.10153161965286,
55.02855008788483,
52.99924620914057,
51.19057563015947,
49.578548876792716,
48.14178623051722,
46.86123248082995,
44.57857582889467,
43.685424387065844,
42.0933334026959,
40.84743568346842,
38.897470333478665,
37.79552796465638,
36.5500935427452,
36.2257391168805
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "S",
"line": {
"color": "blue",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "S",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
0,
2.5,
3.59625,
5.65369375,
6.555571265625001,
8.247908534921876,
9.730963580275391,
11.03019714542356,
12.167978089369273,
13.163958780592365,
14.906851048713396,
15.559565662601617,
16.699569336167485,
17.5490788844974,
18.179003697159533,
18.643024889765208,
18.981778935966094,
19.470271914874488,
19.572065818068666,
19.703677327455825,
19.715596705816367,
19.712910457500335,
19.671183030241412,
19.611567577624296,
19.54482523742205,
19.476378376879737,
19.40890943476233,
19.343697332238698,
19.2813045560001,
19.221930269359245,
19.10925304509285,
19.058842215841338,
18.963495692149042,
18.878509676051582,
18.80276341224844,
18.735252491561642,
18.67508154888315,
18.56782357349389,
18.52585597609554,
18.451046452957367,
18.392503935494886,
18.300878532549454,
18.24910022091612,
18.190579472970335,
18.17533863550288
],
"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.005,
"x1": 0.005,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.0075,
"x1": 0.0075,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.0125,
"x1": 0.0125,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.015000000000000001,
"x1": 0.015000000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.02,
"x1": 0.02,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.025,
"x1": 0.025,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.030000000000000002,
"x1": 0.030000000000000002,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.035,
"x1": 0.035,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.04,
"x1": 0.04,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.05,
"x1": 0.05,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.055,
"x1": 0.055,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.065,
"x1": 0.065,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.075,
"x1": 0.075,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.08499999999999999,
"x1": 0.08499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.09499999999999999,
"x1": 0.09499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.10499999999999998,
"x1": 0.10499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.12499999999999999,
"x1": 0.12499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.13499999999999998,
"x1": 0.13499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.15499999999999997,
"x1": 0.15499999999999997,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.16499999999999998,
"x1": 0.16499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.18499999999999997,
"x1": 0.18499999999999997,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.20499999999999996,
"x1": 0.20499999999999996,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.22499999999999995,
"x1": 0.22499999999999995,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.24499999999999994,
"x1": 0.24499999999999994,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.26499999999999996,
"x1": 0.26499999999999996,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.285,
"x1": 0.285,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.305,
"x1": 0.305,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.325,
"x1": 0.325,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.34500000000000003,
"x1": 0.34500000000000003,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.385,
"x1": 0.385,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.405,
"x1": 0.405,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.445,
"x1": 0.445,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.485,
"x1": 0.485,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.525,
"x1": 0.525,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.5650000000000001,
"x1": 0.5650000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.6050000000000001,
"x1": 0.6050000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.685,
"x1": 0.685,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.7250000000000001,
"x1": 0.7250000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.805,
"x1": 0.805,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.885,
"x1": 0.885,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.045,
"x1": 1.045,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.2049999999999998,
"x1": 1.2049999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.525,
"x1": 1.525,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 2.165,
"x1": 2.165,
"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": "Changes in concentration for `2 S <-> U` and `S <-> X` (time steps shown in dashed lines)"
},
"xaxis": {
"anchor": "y",
"autorange": true,
"domain": [
0,
1
],
"range": [
-0.0010934343434343434,
2.1660934343434346
],
"title": {
"text": "SYSTEM TIME"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"autorange": true,
"domain": [
0,
1
],
"range": [
-5.555555555555555,
105.55555555555556
],
"title": {
"text": "concentration"
},
"type": "linear"
}
}
},
"image/png": "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gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAyAkilkqGlYAhAAAIQgAAEIAABCEAAAhCAAAQgkF0CSKXsji09gwAEIAABCEAAAhCAAAQgAAEIQAACJSOAVCoZWgqGAAQgAAEIQAACEIAABCAAAQhAAALZJYBUyu7Y0jMIQAACEIAABCAAAQhAAAIQgAAEIFAy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6h+3gz0KoxNol0Cv153PyHadJ1Y7HALd63XRR44d+QbMcByZoyCQLiBUSrcaaVnFH7c9TKsLgVYLVHHddcdwt1KrTyWLr1Gg1z9uazxEUxFonECv153PyMadChY05ALda+74Iw6JE485bMiP1uERmFhAqNTj2TFebZfiKVP+WO0RVDcCCQL9XnfdW/1dpwnYmhCoQKDXP24rmNoQBFor0Ot15zOytaeMhW8Ege715kEWGwHflJULCJV6JM19ClWP0+hGgMAogbLrrngKY/FatnhR559jn67hKY1OJwL1CvT6x229R2k2As0SmOi68xnZrH22mk1XQJH8TXfvHPn4AkKlPs6M4sP5vlUPdkbYdeYOI3/I9jGkrgQIlAhMdt2N/YV5dNti2H33mRWXnnMKYwIEahAY/WjzYrrp07ZShLQGd1O0W2Cy685nZLvPDasfDoFu6Dve0airNBx75CjyBYRK+WZ6ECBAgAABAgQIECBAgAABAgRaLyBUav0pAIAAAQIECBAgQIAAAQIECBAgkC8gVMo304MAAQIECBAgQIAAAQIECBAg0HoBoVLrTwEABAgQIECAAAECBAgQIECAAIF8AaFSvpkeBAgQIECAAAECBAgQIECAAIHWCwiVWn8KACBAgAABAgQIECBAgAABAgQI5AsIlfLN9CBAgAABAgQIECBAgAABAgQItF5AqNT6UwAAAQIECBAgQIAAAQIECBAgQCBfQKiUb6YHAQIECBAgQIAAAQIECBAgQKD1AkKl1p8CAAgQIECAAAECBAgQIECAAAEC+QJCpXwzPQgQIECAAAECBAgQIECAAAECrRcQKrX+FABAgAABAgQIECBAgAABAgQIEMgXECrlm+lBgAABAgQIECBAgAABAgQIEGi9gFCp9acAAAIECBAgQIAAAQIECBAgQIBAvoBQKd9MDwIECBAgQIAAAQIECBAgQIBA6wWESq0/BQAQIECAAAECBAgQIECAAAECBPIFhEr5ZnoQIECAAAECBAgQIECAAAECBFovIFRq/SkAgAABAgQIECBAgAABAgQIECCQLyBUyjfTgwABAgQIECBAgAABAgQIECDQegGhUutPAQAECBAgQKA3gfM/f3Vc+K/XbND5+CMOiROPOSz2n3di52fLl56/QZviZ9OnbR3LFi/q/KxsrD0POGrSg5w+bavOPEeffHZ8546V47Zd9JFjY95B+8Xco06L+1Y9GN1/7zZe+vWb47RPXRK7ztxh5LjGDpRyHPu9cXZc81+3jHQ95E/fHGed+r6seVPW0duu6UWAAAECBAgQqE5AqFSdpZEIECBAgEBrBLqhx5ILPhazZ+0ysu4iHLpu+fdGQpkihNl3n1lx6TmnjLT56JkXx823rRgJm1LHGhv+jA2Fip8XYz3y6OoJQ6GiTTdUGntc3f8+Wag0eoO7IdR4xzHez3LmTVlHa042CyVAgAABAgSGVkCoNLRb48AIECBAgMDwChRhUfcOnMmOcmy4smLl/TH/hI+vd5dQ6lhVhkrbTd+6c0dTNxTrHlcRNJWFUinHMVGolDqvUGl4z31HRoAAAQIECPxGQKjkbCBAgAABAgSyBYqvr+22y47r3YE00SBFQHLv/Q907kwq7tYpgpXRdy7ljFXMMdkdQilhTHEMr999p/jZLx6LV8/YtvPVtOLuqeJV/LdBhkqp86asI3vTdCBAgAABAgQIVCwgVKoY1HAECBAgQKANAt1gp7vWbk2jidY+uhbRXTcuXq9Z7lhloVJKTaUi3Nl3n9d3aigVx1McX3HX0rmf+/LAQ6WUedVUasNVZI0ECBAgQGDTFxAqbfp7aAUECBAgQGCjCnS/OtY9iPG+FtcNgrpFvCc64Jyx+qmpVIRK3eLZxbF0757KuUOol5pKqfPmHMdG3XyTEyBAgAABAq0WECq1evstngABAgQIVCtQfI2sePLZ2LuRxqulVDbzRGOV3alU9vW17tffilCp+9S5bkCVE+b0EyqVzZtzHGWOfk6AAAECBAgQGJSAUGlQssYlQIAAAQINFSgCoi989brOnT5jX92wZOxT4SYKlXoZq8pQqTj+oqZTUe+peOWEOf2ESmXz5hxHQ08zyyJAgAABAgQ2AQGh0iawSQ6RAAECBAgMk8Dor6iNviNp9BPURhfiLo59slCpeBpc8Uodq+pQabRtTpjTb6g02bw5xzFM54ZjIUCAAAECBNolIFRq135bLQECBAgQqExgdPHt7qAT1Uwq+/pbzlhloVJqoe7x7rTKCXMmOo7u1/a6Jt0aU6O/djd2E8bOq1B3ZaepgQgQIECAAIEBCgiVBohraAIECBAgQIAAAQIECBAgQIBAUwWESk3dWesiQIAAAQIECBAgQIAAAQIECAxQQKg0QFxDEyBAgAABAgQIECBAgAABAgSaKiBUaurOWhcBAgQIECBAgAABAgQIECBAYIACQqUB4hqaAAECBAgQIECAAAECBAgQINBUAaFSU3fWuggQIECAAAECBAgQIECAAAECAxQQKg0Q19AECBAgQIAAAQIECBAgQIAAgaYKCJWaurPWRYAAAQIECBAgQIAAAQIECBAYoIBQaYC4hiZAgAABAgQIECBAgAABAgQINFVAqNTUnbUuAgQIECBAgAABAgQIECBAgMAABYRKA8Q1NAECBAgQIECAAAECBAgQIECgqQJCpaburHURIECAAAECBAgQIECAAAECBAYoIFQaIK6hCRAgQIAAAQIECBAgQIAAAQJNFRAqNXVnrYsAAQIECBAgQIAAAQIECBAgMEABodIAcQ1NgAABAgQIECBAgAABAgQIEGiqgFCpqTtrXQQIECBAgAABAgQIECBAgACBAQoIlQaIa2gCBAgQIECAAAECBAgQIECAQFMFhEpN3VnrIkCAAAECBAgQIECAAAECBAgMUECoNEBcQxMgQIAAAQIECBAgQIAAAQIEmiogVGrqzloXAQIECBAgQIAAAQIECBAgQGCAAkKlAeIamgABAgQIECBAgAABAgQIECDQVAGhUlN31roIECBAgAABAgQIECBAgAABAgMUECoNENfQBAgQIECAAAECBAgQIECAAIGmCgiVmrqz1kWAAAECBAgQIECAAAECBAgQGKCAUGmAuIYmQIAAAQIECBAgQIAAAQIECDRVQKjU1J21LgIECBAgQIAAAQIECBAgQIDAAAWESgPENTQBAgQIECBAgAABAgQIECBAoKkCQqWm7qx1ESBAgAABAgQIECBAgAABAgQGKCBUGiCuoQkQIECAAAECBAgQIECAAAECTRUQKjV1Z62LAAECBAgQIECAAAECBAgQIDBAAaHSAHENTYAAAQIECBAgQIAAAQIECBBoqoBQqak7a10ECBAgQIAAAQIECBAgQIAAgQEKCJUGiGtoAgQIECBAgAABAgQIECBAgEBTBYRKTd1Z6yJAgAABAgQIECBAgAABAgQIDFBAqDRAXEMTIECAAAECBAgQIECAAAECBJoqIFRq6s5aFwECBAgQIECAAAECBAgQIEBggAJCpQHiGpoAAQIECBAgQIAAAQIECBAg0FQBoVJTd9a6CBAgQIAAAQIECBAgQIAAAQIDFPh/RLbDHEZbFioAAAAASUVORK5CYII=",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"dynamics.plot_curves(colors=['green', 'orange', 'blue'], show_intervals=True)"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "75866674-1a8a-40a6-bdc4-ee52eb94a823",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "Chemical=U
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "U",
"line": {
"color": "green",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "U",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
50,
49.5,
49.3025,
48.953325,
48.82163225,
48.595638778125,
48.439598731740624,
48.34444128763423,
48.30220476057483,
48.30590183654385,
48.39290050226037,
48.5052455391863,
48.7799058814107,
49.14027331067588,
49.56139415522215,
50.02448656789047,
50.51543882771388,
51.5319059043599,
52.05888953946266,
53.10806448877514,
53.6221973851961,
54.631804962718874,
55.60059843741017,
56.52396378475239,
57.400856045782184,
58.231993841938426,
59.018934628561645,
59.76360275298115,
60.468050216020096,
61.13433693633931,
62.39460766762712,
62.95630384813689,
64.01862904935517,
64.96545734689445,
65.8093438554794,
66.56148063896055,
67.23184298514343,
68.4268002988057,
68.89435981841929,
69.72781007217334,
70.38003019051833,
71.40082556698592,
71.97768590721373,
72.62966349214221,
72.7994611238083
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=X
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "X",
"line": {
"color": "orange",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "X",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
100,
98.5,
97.79875,
96.43965625,
95.801164234375,
94.56081390882812,
93.38983895624335,
92.28092027930796,
91.22761238948105,
90.22423754631991,
88.30734794676586,
87.42994325902578,
85.7406189010111,
84.17037449415082,
82.69820799239614,
81.30800197445382,
79.98734340860611,
77.46591627640568,
76.31015510300598,
74.08019369499387,
73.0400085237914,
71.02347961706188,
69.12762009493821,
67.34050485287088,
65.65346267101354,
64.05963393924337,
62.55322130811434,
61.12909716179896,
59.782595011959664,
58.5093958579621,
56.10153161965286,
55.02855008788483,
52.99924620914057,
51.19057563015947,
49.578548876792716,
48.14178623051722,
46.86123248082995,
44.57857582889467,
43.685424387065844,
42.0933334026959,
40.84743568346842,
38.897470333478665,
37.79552796465638,
36.5500935427452,
36.2257391168805
],
"yaxis": "y"
},
{
"hovertemplate": "Chemical=S
SYSTEM TIME=%{x}
concentration=%{y}",
"legendgroup": "S",
"line": {
"color": "blue",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "S",
"orientation": "v",
"showlegend": true,
"type": "scatter",
"x": [
0,
0.005,
0.0075,
0.0125,
0.015000000000000001,
0.02,
0.025,
0.030000000000000002,
0.035,
0.04,
0.05,
0.055,
0.065,
0.075,
0.08499999999999999,
0.09499999999999999,
0.10499999999999998,
0.12499999999999999,
0.13499999999999998,
0.15499999999999997,
0.16499999999999998,
0.18499999999999997,
0.20499999999999996,
0.22499999999999995,
0.24499999999999994,
0.26499999999999996,
0.285,
0.305,
0.325,
0.34500000000000003,
0.385,
0.405,
0.445,
0.485,
0.525,
0.5650000000000001,
0.6050000000000001,
0.685,
0.7250000000000001,
0.805,
0.885,
1.045,
1.2049999999999998,
1.525,
2.165
],
"xaxis": "x",
"y": [
0,
2.5,
3.59625,
5.65369375,
6.555571265625001,
8.247908534921876,
9.730963580275391,
11.03019714542356,
12.167978089369273,
13.163958780592365,
14.906851048713396,
15.559565662601617,
16.699569336167485,
17.5490788844974,
18.179003697159533,
18.643024889765208,
18.981778935966094,
19.470271914874488,
19.572065818068666,
19.703677327455825,
19.715596705816367,
19.712910457500335,
19.671183030241412,
19.611567577624296,
19.54482523742205,
19.476378376879737,
19.40890943476233,
19.343697332238698,
19.2813045560001,
19.221930269359245,
19.10925304509285,
19.058842215841338,
18.963495692149042,
18.878509676051582,
18.80276341224844,
18.735252491561642,
18.67508154888315,
18.56782357349389,
18.52585597609554,
18.451046452957367,
18.392503935494886,
18.300878532549454,
18.24910022091612,
18.190579472970335,
18.17533863550288
],
"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.005,
"x1": 0.005,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.0075,
"x1": 0.0075,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.0125,
"x1": 0.0125,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.015000000000000001,
"x1": 0.015000000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.04,
"x1": 0.04,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.05,
"x1": 0.05,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.055,
"x1": 0.055,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.10499999999999998,
"x1": 0.10499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.12499999999999999,
"x1": 0.12499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.13499999999999998,
"x1": 0.13499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.15499999999999997,
"x1": 0.15499999999999997,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.16499999999999998,
"x1": 0.16499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.34500000000000003,
"x1": 0.34500000000000003,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.385,
"x1": 0.385,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.405,
"x1": 0.405,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.6050000000000001,
"x1": 0.6050000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.685,
"x1": 0.685,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.7250000000000001,
"x1": 0.7250000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.885,
"x1": 0.885,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.2049999999999998,
"x1": 1.2049999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.525,
"x1": 1.525,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 2.165,
"x1": 2.165,
"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": "Critical values of time-step changes for reactions `2 S <-> U` and `S <-> X`"
},
"xaxis": {
"anchor": "y",
"autorange": true,
"domain": [
0,
1
],
"range": [
-0.0010934343434343434,
2.1660934343434346
],
"title": {
"text": "SYSTEM TIME"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"autorange": true,
"domain": [
0,
1
],
"range": [
-5.555555555555555,
105.55555555555556
],
"title": {
"text": "concentration"
},
"type": "linear"
}
}
},
"image/png": "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OgnMfkRt9omk2W9Qmz2IO459r1Apfhtc/Glba+hQadY2JczpGyrt1W/KONZpbxgLAQIECBAgUJeAUKmu9TZbAgQIECAwmMDs4dtN0WVnJq36+FtKrVWhUtuDuhc9aZUS5iwbR/OxvcakOWNq9mN384sw36+DugfbpgoRIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBRQKiUEVdpAgQIECBAgAABAgQIECBAgECpAkKlUlfWvAgQIECAAAECBAgQIECAAAECGQWEShlxlSZAgAABAgQIECBAgAABAgQIlCogVCp1Zc2LAAECBAgQIECAAAECBAgQIJBR4H8GCkIehpd2gAAAAABJRU5ErkJggg==",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Show the \"critical values\", i.e. times when the step size changes\n",
"dynamics.plot_curves(colors=['green', 'orange', 'blue'], vertical_lines=transition_times, \n",
" title=\"Critical values of time-step changes for reactions `2 S <-> U` and `S <-> X`\")"
]
},
{
"cell_type": "markdown",
"id": "73277ff6-78f4-4b3c-9304-c22e4873c566",
"metadata": {},
"source": [
"## Note: the dashed lines in the plots immediatly above and below are NOT the steps; they are the \"critical values\", i.e. times when the step size changes. \n",
"The time steps were shown in an earlier plots"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "ca14a2d7-5916-4144-a909-bfc3cf89c02c",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"hovertemplate": "x=%{x}
y=%{y}",
"legendgroup": "",
"line": {
"color": "#636efa",
"dash": "solid"
},
"marker": {
"symbol": "circle"
},
"mode": "lines",
"name": "",
"orientation": "v",
"showlegend": false,
"type": "scatter",
"x": [
0,
0.005,
0.005,
0.0075,
0.0075,
0.0125,
0.0125,
0.015000000000000001,
0.015000000000000001,
0.04,
0.04,
0.05,
0.05,
0.055,
0.055,
0.10499999999999998,
0.10499999999999998,
0.12499999999999999,
0.12499999999999999,
0.13499999999999998,
0.13499999999999998,
0.15499999999999997,
0.15499999999999997,
0.16499999999999998,
0.16499999999999998,
0.34500000000000003,
0.34500000000000003,
0.385,
0.385,
0.405,
0.405,
0.6050000000000001,
0.6050000000000001,
0.685,
0.685,
0.7250000000000001,
0.7250000000000001,
0.885,
0.885,
1.2049999999999998,
1.2049999999999998,
1.525,
1.525,
2.165
],
"xaxis": "x",
"y": [
0.005,
0.005,
0.0024999999999999996,
0.0024999999999999996,
0.005000000000000001,
0.005000000000000001,
0.0025000000000000005,
0.0025000000000000005,
0.0049999999999999975,
0.0049999999999999975,
0.010000000000000002,
0.010000000000000002,
0.0049999999999999975,
0.0049999999999999975,
0.009999999999999995,
0.009999999999999995,
0.020000000000000004,
0.020000000000000004,
0.009999999999999995,
0.009999999999999995,
0.01999999999999999,
0.01999999999999999,
0.010000000000000009,
0.010000000000000009,
0.020000000000000018,
0.020000000000000018,
0.03999999999999998,
0.03999999999999998,
0.020000000000000018,
0.020000000000000018,
0.040000000000000036,
0.040000000000000036,
0.07999999999999996,
0.07999999999999996,
0.040000000000000036,
0.040000000000000036,
0.07999999999999996,
0.07999999999999996,
0.15999999999999992,
0.15999999999999992,
0.32000000000000006,
0.32000000000000006,
0.6400000000000001,
0.6400000000000001
],
"yaxis": "y"
}
],
"layout": {
"autosize": true,
"legend": {
"tracegroupgap": 0
},
"margin": {
"t": 60
},
"shapes": [
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0,
"x1": 0,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.005,
"x1": 0.005,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.0075,
"x1": 0.0075,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.0125,
"x1": 0.0125,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.015000000000000001,
"x1": 0.015000000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.02,
"x1": 0.02,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.025,
"x1": 0.025,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.030000000000000002,
"x1": 0.030000000000000002,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.035,
"x1": 0.035,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.04,
"x1": 0.04,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.05,
"x1": 0.05,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.055,
"x1": 0.055,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.065,
"x1": 0.065,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.075,
"x1": 0.075,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.08499999999999999,
"x1": 0.08499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.09499999999999999,
"x1": 0.09499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.10499999999999998,
"x1": 0.10499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.12499999999999999,
"x1": 0.12499999999999999,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.13499999999999998,
"x1": 0.13499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.15499999999999997,
"x1": 0.15499999999999997,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.16499999999999998,
"x1": 0.16499999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.18499999999999997,
"x1": 0.18499999999999997,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.20499999999999996,
"x1": 0.20499999999999996,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.22499999999999995,
"x1": 0.22499999999999995,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.24499999999999994,
"x1": 0.24499999999999994,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.26499999999999996,
"x1": 0.26499999999999996,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.285,
"x1": 0.285,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.305,
"x1": 0.305,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.325,
"x1": 0.325,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.34500000000000003,
"x1": 0.34500000000000003,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.385,
"x1": 0.385,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.405,
"x1": 0.405,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.445,
"x1": 0.445,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.485,
"x1": 0.485,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.525,
"x1": 0.525,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.5650000000000001,
"x1": 0.5650000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.6050000000000001,
"x1": 0.6050000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.685,
"x1": 0.685,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.7250000000000001,
"x1": 0.7250000000000001,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.805,
"x1": 0.805,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 0.885,
"x1": 0.885,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.045,
"x1": 1.045,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.2049999999999998,
"x1": 1.2049999999999998,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 1.525,
"x1": 1.525,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
},
{
"line": {
"color": "gray",
"dash": "dot",
"width": 1
},
"type": "line",
"x0": 2.165,
"x1": 2.165,
"xref": "x",
"y0": 0,
"y1": 1,
"yref": "y domain"
}
],
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
},
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"pattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"fillpattern": {
"fillmode": "overlay",
"size": 10,
"solidity": 0.2
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"autotypenumbers": "strict",
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "Simulation step sizes"
},
"xaxis": {
"anchor": "y",
"autorange": true,
"domain": [
0,
1
],
"range": [
-0.0010696640316205533,
2.1660696640316206
],
"title": {
"text": "SYSTEM TIME"
},
"type": "linear"
},
"yaxis": {
"anchor": "x",
"autorange": true,
"domain": [
0,
1
],
"range": [
-0.03291666666666667,
0.6754166666666668
],
"title": {
"text": "Step size"
},
"type": "linear"
}
}
},
"image/png": "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56+4cMYeKxOUfOYLXwnD3lTXf56z3U007M1pxWSKPqdtDwyLIGjYW+a6bW75xm1hroLi3buS+vdDzNvfug5z3UkUcw7dPdE/V29/i/3Rph0BAgQIECBAgAABAgQI1C0wVaFSF3NUTZvBoKGuO5X6w43unIow581/+Oedu2M+9hd/2PnjUXelDM6/mPew4t+Db7rrBiSjAptusNad07DHt6reqTTs3Is/GxbC9J/nYLHqbuDVf4H0z7d77sWfFSHYbOc06iIb9CjaDd49NXin0mz1kgb7znUOxfGGjTdXIFb3Dw3jEyBAgAABAgQIECBAgACBQmAqQyVLP/8FPCY2/9fYGRIgQIAAAQIECBAgQIDAeAWESuP1d/SaBIRKNcEalgABAgQIECBAgAABAgQI/LuAUMlWmJcCQqV5uaxOigABAgQIECBAgAABAgRaJCBUatFimAoBAgQIECBAgAABAgQIECBAYFIEhEqTslLmSYAAAQIECBAgQIAAAQIECBBokYBQqUWLYSoECBAgQIAAAQIECBAgQIAAgUkRECpNykqZJwECBAgQIECAAAECBAgQIECgRQJCpRYthqkQIECAAAECBAgQIECAAAECBCZFQKg0KStlngQIECBAgAABAgQIECBAgACBFgkIlVq0GKZCgAABAgQIECBAgAABAgQIEJgUAaHSpKyUeRIgQIAAAQIECBAgQIAAAQIEWiQgVGrRYpgKAQIECBAgQIAAAQIECBAgQGBSBIRKk7JS5kmAAAECBAgQIECAAAECBAgQaJGAUKlFi2EqBAgQIECAAAECBAgQIECAAIFJERAqTcpKmScBAgQIECBAgAABAgQIECBAoEUCQqUWLYapECBAgAABAgQIECBAgAABAgQmRUCoNCkrZZ4ECBAgQIAAAQIECBAgQIAAgRYJCJVatBimQoAAAQIECBAgQIAAAQIECBCYFAGh0qSslHkSIECAAAECBAgQIECAAAECBFokIFRq0WKYCgECBAgQIECAAAECBAgQIEBgUgSESpOyUuZJgAABAgQIECBAgAABAgQIEGiRgFCpRYthKgQIECBAgAABAgQIECBAgACBSREQKk3KSpknAQIECBAgQIAAAQIECBAgQKBFAkKlFi2GqRAgQIAAAQIECBAgQIAAAQIEJkVAqDQpK2WeBAgQIECAAAECBAgQIECAAIEWCQiV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+lznTp/Br25YMvhWuFGhUspYOUOlYv5FTaei3lPxVSbMqRIqzXXcMvMotXgaEyBAgAABAgTmEBAq2SIECBAgQIBAbQL9j6j135HU/wa1/kLcxURmC5WKt8EVX7Fj5Q6V+qHKhDlVQ6XZjltmHrUttIEJECBAgACBqRQQKk3lsjtpAgQIECDQrEB/8e3ukUfVTJrr8bcyY80VKsUW6h52p1WZMGfUPLqP7XVNujWm+h+7G1ypweMq1N3sXnY0AgQIECBAYIeAUMluIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgIBQyR4gQIAAAQIECBAgQIAAAQIECBAoLSBUKk2mAwECBAgQIECAAAECBAgQIECAgFDJHiBAgAABAgQIECBAgAABAgQIECgtIFQqTaYDAQIECBAgQIAAAQIECBAgQICAUMkeIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgIBQyR4gQIAAAQIECBAgQIAAAQIECBAoLSBUKk2mAwECBAgQIECAAAECBAgQIECAgFDJHiBAgAABAgQIECBAgAABAgQIECgtIFQqTaYDAQIECBAgQIAAAQIECBAgQICAUMkeIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgIBQyR4gQIAAAQIECBAgQIAAAQIECBAoLSBUKk2mAwECBAgQIECAAAECBAgQIECAgFDJHiBAgAABAgQIECBAgAABAgQIECgtIFQqTaYDAQIECBAgQIAAAQIECBAgQICAUMkeIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgIBQyR4gQIAAAQIECBAgQIAAAQIECBAoLSBUKk2mAwECBAgQIECAAAECBAgQIECAgFDJHiBAgAABAgQIECBAgAABAgQIECgtIFQqTaYDAQIECBAgQIAAAQIECBAgQICAUMkeIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgIBQyR4gQIAAAQIECBAgQIAAAQIECBAoLSBUKk2mAwECBAgQIECAAAECBAgQIECAgFDJHiBAgAABAgQIECBAgAABAgQIECgtIFQqTaYDAQIECBAgQIAAAQIECBAgQICAUMkeIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgIBQyR4gQIAAAQIECBAgQIAAAQIECBAoLSBUKk2mAwECBAgQIECAAAECBAgQIECAgFDJHiBAgAABAgQIECBAgAABAgQIECgtIFQqTaYDAQIECBAgQIAAAQIECBAgQICAUMkeIECAAAECBAgQIECAAAECBAgQKC0gVCpNpgMBAgQIECBAgAABAgQIECBAgMD/D22knEoOzIodAAAAAElFTkSuQmCC",
"text/html": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"dynamics.plot_step_sizes(show_intervals=True)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "3d012f8e-4066-40b6-9b9a-d1e9dd7532c7",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2 S <-> U\n",
"Final concentrations: [U] = 72.8 ; [S] = 18.18\n",
"1. Ratio of reactant/product concentrations, adjusted for reaction orders: 4.0054\n",
" Formula used: [U] / [S]\n",
"2. Ratio of forward/reverse reaction rates: 4.0\n",
"Discrepancy between the two values: 0.1349 %\n",
"Reaction IS in equilibrium (within 1% tolerance)\n",
"\n",
"S <-> X\n",
"Final concentrations: [X] = 36.23 ; [S] = 18.18\n",
"1. Ratio of reactant/product concentrations, adjusted for reaction orders: 1.99313\n",
" Formula used: [X] / [S]\n",
"2. Ratio of forward/reverse reaction rates: 2.0\n",
"Discrepancy between the two values: 0.3437 %\n",
"Reaction IS in equilibrium (within 1% tolerance)\n",
"\n"
]
},
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.is_in_equilibrium()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "9dd856c0-58e6-4048-8b03-90f68e725232",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Reaction: 2 S <-> U\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" TIME | \n",
" Delta U | \n",
" Delta X | \n",
" Delta S | \n",
" reaction | \n",
" substep | \n",
" time_subdivision | \n",
" delta_time | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0000 | \n",
" -1.000000 | \n",
" 0.0 | \n",
" 2.000000 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.0000 | \n",
" -0.500000 | \n",
" 0.0 | \n",
" 1.000000 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.0050 | \n",
" -0.197500 | \n",
" 0.0 | \n",
" 0.395000 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0025 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.0075 | \n",
" -0.349175 | \n",
" 0.0 | \n",
" 0.698350 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.0125 | \n",
" -0.131693 | \n",
" 0.0 | \n",
" 0.263385 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0025 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.0150 | \n",
" -0.225993 | \n",
" 0.0 | \n",
" 0.451987 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.0200 | \n",
" -0.156040 | \n",
" 0.0 | \n",
" 0.312080 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.0250 | \n",
" -0.095157 | \n",
" 0.0 | \n",
" 0.190315 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.0300 | \n",
" -0.042237 | \n",
" 0.0 | \n",
" 0.084473 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.0350 | \n",
" 0.003697 | \n",
" 0.0 | \n",
" -0.007394 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.0400 | \n",
" 0.086999 | \n",
" 0.0 | \n",
" -0.173997 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.0500 | \n",
" 0.112345 | \n",
" 0.0 | \n",
" -0.224690 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.0550 | \n",
" 0.274660 | \n",
" 0.0 | \n",
" -0.549321 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.0650 | \n",
" 0.360367 | \n",
" 0.0 | \n",
" -0.720735 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.0750 | \n",
" 0.421121 | \n",
" 0.0 | \n",
" -0.842242 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.0850 | \n",
" 0.463092 | \n",
" 0.0 | \n",
" -0.926185 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.0950 | \n",
" 0.490952 | \n",
" 0.0 | \n",
" -0.981905 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.1050 | \n",
" 1.016467 | \n",
" 0.0 | \n",
" -2.032934 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.1250 | \n",
" 0.526984 | \n",
" 0.0 | \n",
" -1.053967 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.1350 | \n",
" 1.049175 | \n",
" 0.0 | \n",
" -2.098350 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.1550 | \n",
" 0.514133 | \n",
" 0.0 | \n",
" -1.028266 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.1650 | \n",
" 1.009608 | \n",
" 0.0 | \n",
" -2.019215 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.1850 | \n",
" 0.968793 | \n",
" 0.0 | \n",
" -1.937587 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.2050 | \n",
" 0.923365 | \n",
" 0.0 | \n",
" -1.846731 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.2250 | \n",
" 0.876892 | \n",
" 0.0 | \n",
" -1.753785 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.2450 | \n",
" 0.831138 | \n",
" 0.0 | \n",
" -1.662276 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.2650 | \n",
" 0.786941 | \n",
" 0.0 | \n",
" -1.573882 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.2850 | \n",
" 0.744668 | \n",
" 0.0 | \n",
" -1.489336 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.3050 | \n",
" 0.704447 | \n",
" 0.0 | \n",
" -1.408895 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.3250 | \n",
" 0.666287 | \n",
" 0.0 | \n",
" -1.332573 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.3450 | \n",
" 1.260271 | \n",
" 0.0 | \n",
" -2.520541 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.3850 | \n",
" 0.561696 | \n",
" 0.0 | \n",
" -1.123392 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.4050 | \n",
" 1.062325 | \n",
" 0.0 | \n",
" -2.124650 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.4450 | \n",
" 0.946828 | \n",
" 0.0 | \n",
" -1.893657 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.4850 | \n",
" 0.843887 | \n",
" 0.0 | \n",
" -1.687773 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.5250 | \n",
" 0.752137 | \n",
" 0.0 | \n",
" -1.504274 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.5650 | \n",
" 0.670362 | \n",
" 0.0 | \n",
" -1.340725 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.6050 | \n",
" 1.194957 | \n",
" 0.0 | \n",
" -2.389915 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0800 | \n",
" | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.6850 | \n",
" 0.467560 | \n",
" 0.0 | \n",
" -0.935119 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.7250 | \n",
" 0.833450 | \n",
" 0.0 | \n",
" -1.666901 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0800 | \n",
" | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.8050 | \n",
" 0.652220 | \n",
" 0.0 | \n",
" -1.304440 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.0800 | \n",
" | \n",
"
\n",
" \n",
" | 41 | \n",
" 0.8850 | \n",
" 1.020795 | \n",
" 0.0 | \n",
" -2.041591 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.1600 | \n",
" | \n",
"
\n",
" \n",
" | 42 | \n",
" 1.0450 | \n",
" 0.576860 | \n",
" 0.0 | \n",
" -1.153721 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.1600 | \n",
" | \n",
"
\n",
" \n",
" | 43 | \n",
" 1.2050 | \n",
" 0.651978 | \n",
" 0.0 | \n",
" -1.303955 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.3200 | \n",
" | \n",
"
\n",
" \n",
" | 44 | \n",
" 1.5250 | \n",
" 0.169798 | \n",
" 0.0 | \n",
" -0.339595 | \n",
" 0 | \n",
" 0 | \n",
" 1 | \n",
" 0.6400 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" TIME Delta U Delta X Delta S reaction substep time_subdivision \\\n",
"0 0.0000 -1.000000 0.0 2.000000 0 0 1 \n",
"1 0.0000 -0.500000 0.0 1.000000 0 0 1 \n",
"2 0.0050 -0.197500 0.0 0.395000 0 0 1 \n",
"3 0.0075 -0.349175 0.0 0.698350 0 0 1 \n",
"4 0.0125 -0.131693 0.0 0.263385 0 0 1 \n",
"5 0.0150 -0.225993 0.0 0.451987 0 0 1 \n",
"6 0.0200 -0.156040 0.0 0.312080 0 0 1 \n",
"7 0.0250 -0.095157 0.0 0.190315 0 0 1 \n",
"8 0.0300 -0.042237 0.0 0.084473 0 0 1 \n",
"9 0.0350 0.003697 0.0 -0.007394 0 0 1 \n",
"10 0.0400 0.086999 0.0 -0.173997 0 0 1 \n",
"11 0.0500 0.112345 0.0 -0.224690 0 0 1 \n",
"12 0.0550 0.274660 0.0 -0.549321 0 0 1 \n",
"13 0.0650 0.360367 0.0 -0.720735 0 0 1 \n",
"14 0.0750 0.421121 0.0 -0.842242 0 0 1 \n",
"15 0.0850 0.463092 0.0 -0.926185 0 0 1 \n",
"16 0.0950 0.490952 0.0 -0.981905 0 0 1 \n",
"17 0.1050 1.016467 0.0 -2.032934 0 0 1 \n",
"18 0.1250 0.526984 0.0 -1.053967 0 0 1 \n",
"19 0.1350 1.049175 0.0 -2.098350 0 0 1 \n",
"20 0.1550 0.514133 0.0 -1.028266 0 0 1 \n",
"21 0.1650 1.009608 0.0 -2.019215 0 0 1 \n",
"22 0.1850 0.968793 0.0 -1.937587 0 0 1 \n",
"23 0.2050 0.923365 0.0 -1.846731 0 0 1 \n",
"24 0.2250 0.876892 0.0 -1.753785 0 0 1 \n",
"25 0.2450 0.831138 0.0 -1.662276 0 0 1 \n",
"26 0.2650 0.786941 0.0 -1.573882 0 0 1 \n",
"27 0.2850 0.744668 0.0 -1.489336 0 0 1 \n",
"28 0.3050 0.704447 0.0 -1.408895 0 0 1 \n",
"29 0.3250 0.666287 0.0 -1.332573 0 0 1 \n",
"30 0.3450 1.260271 0.0 -2.520541 0 0 1 \n",
"31 0.3850 0.561696 0.0 -1.123392 0 0 1 \n",
"32 0.4050 1.062325 0.0 -2.124650 0 0 1 \n",
"33 0.4450 0.946828 0.0 -1.893657 0 0 1 \n",
"34 0.4850 0.843887 0.0 -1.687773 0 0 1 \n",
"35 0.5250 0.752137 0.0 -1.504274 0 0 1 \n",
"36 0.5650 0.670362 0.0 -1.340725 0 0 1 \n",
"37 0.6050 1.194957 0.0 -2.389915 0 0 1 \n",
"38 0.6850 0.467560 0.0 -0.935119 0 0 1 \n",
"39 0.7250 0.833450 0.0 -1.666901 0 0 1 \n",
"40 0.8050 0.652220 0.0 -1.304440 0 0 1 \n",
"41 0.8850 1.020795 0.0 -2.041591 0 0 1 \n",
"42 1.0450 0.576860 0.0 -1.153721 0 0 1 \n",
"43 1.2050 0.651978 0.0 -1.303955 0 0 1 \n",
"44 1.5250 0.169798 0.0 -0.339595 0 0 1 \n",
"\n",
" delta_time caption \n",
"0 0.0100 \n",
"1 0.0050 \n",
"2 0.0025 \n",
"3 0.0050 \n",
"4 0.0025 \n",
"5 0.0050 \n",
"6 0.0050 \n",
"7 0.0050 \n",
"8 0.0050 \n",
"9 0.0050 \n",
"10 0.0100 \n",
"11 0.0050 \n",
"12 0.0100 \n",
"13 0.0100 \n",
"14 0.0100 \n",
"15 0.0100 \n",
"16 0.0100 \n",
"17 0.0200 \n",
"18 0.0100 \n",
"19 0.0200 \n",
"20 0.0100 \n",
"21 0.0200 \n",
"22 0.0200 \n",
"23 0.0200 \n",
"24 0.0200 \n",
"25 0.0200 \n",
"26 0.0200 \n",
"27 0.0200 \n",
"28 0.0200 \n",
"29 0.0200 \n",
"30 0.0400 \n",
"31 0.0200 \n",
"32 0.0400 \n",
"33 0.0400 \n",
"34 0.0400 \n",
"35 0.0400 \n",
"36 0.0400 \n",
"37 0.0800 \n",
"38 0.0400 \n",
"39 0.0800 \n",
"40 0.0800 \n",
"41 0.1600 \n",
"42 0.1600 \n",
"43 0.3200 \n",
"44 0.6400 "
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.get_diagnostic_rxn_data(rxn_index=0)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "5ff51045-dfa3-4f04-94f4-5d66f1352d4a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Reaction: S <-> X\n"
]
},
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" TIME | \n",
" Delta U | \n",
" Delta X | \n",
" Delta S | \n",
" reaction | \n",
" substep | \n",
" time_subdivision | \n",
" delta_time | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0000 | \n",
" 0.0 | \n",
" -3.000000 | \n",
" 3.000000 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.0000 | \n",
" 0.0 | \n",
" -1.500000 | \n",
" 1.500000 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.0050 | \n",
" 0.0 | \n",
" -0.701250 | \n",
" 0.701250 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0025 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.0075 | \n",
" 0.0 | \n",
" -1.359094 | \n",
" 1.359094 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.0125 | \n",
" 0.0 | \n",
" -0.638492 | \n",
" 0.638492 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0025 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.0150 | \n",
" 0.0 | \n",
" -1.240350 | \n",
" 1.240350 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.0200 | \n",
" 0.0 | \n",
" -1.170975 | \n",
" 1.170975 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.0250 | \n",
" 0.0 | \n",
" -1.108919 | \n",
" 1.108919 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.0300 | \n",
" 0.0 | \n",
" -1.053308 | \n",
" 1.053308 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.0350 | \n",
" 0.0 | \n",
" -1.003375 | \n",
" 1.003375 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.0400 | \n",
" 0.0 | \n",
" -1.916890 | \n",
" 1.916890 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.0500 | \n",
" 0.0 | \n",
" -0.877405 | \n",
" 0.877405 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0050 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.0550 | \n",
" 0.0 | \n",
" -1.689324 | \n",
" 1.689324 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.0650 | \n",
" 0.0 | \n",
" -1.570244 | \n",
" 1.570244 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.0750 | \n",
" 0.0 | \n",
" -1.472167 | \n",
" 1.472167 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.0850 | \n",
" 0.0 | \n",
" -1.390206 | \n",
" 1.390206 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.0950 | \n",
" 0.0 | \n",
" -1.320659 | \n",
" 1.320659 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.1050 | \n",
" 0.0 | \n",
" -2.521427 | \n",
" 2.521427 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.1250 | \n",
" 0.0 | \n",
" -1.155761 | \n",
" 1.155761 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.1350 | \n",
" 0.0 | \n",
" -2.229961 | \n",
" 2.229961 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.1550 | \n",
" 0.0 | \n",
" -1.040185 | \n",
" 1.040185 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0100 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.1650 | \n",
" 0.0 | \n",
" -2.016529 | \n",
" 2.016529 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.1850 | \n",
" 0.0 | \n",
" -1.895860 | \n",
" 1.895860 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.2050 | \n",
" 0.0 | \n",
" -1.787115 | \n",
" 1.787115 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.2250 | \n",
" 0.0 | \n",
" -1.687042 | \n",
" 1.687042 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.2450 | \n",
" 0.0 | \n",
" -1.593829 | \n",
" 1.593829 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.2650 | \n",
" 0.0 | \n",
" -1.506413 | \n",
" 1.506413 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.2850 | \n",
" 0.0 | \n",
" -1.424124 | \n",
" 1.424124 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.3050 | \n",
" 0.0 | \n",
" -1.346502 | \n",
" 1.346502 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.3250 | \n",
" 0.0 | \n",
" -1.273199 | \n",
" 1.273199 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.3450 | \n",
" 0.0 | \n",
" -2.407864 | \n",
" 2.407864 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.3850 | \n",
" 0.0 | \n",
" -1.072982 | \n",
" 1.072982 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0200 | \n",
" | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.4050 | \n",
" 0.0 | \n",
" -2.029304 | \n",
" 2.029304 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.4450 | \n",
" 0.0 | \n",
" -1.808671 | \n",
" 1.808671 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.4850 | \n",
" 0.0 | \n",
" -1.612027 | \n",
" 1.612027 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.5250 | \n",
" 0.0 | \n",
" -1.436763 | \n",
" 1.436763 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.5650 | \n",
" 0.0 | \n",
" -1.280554 | \n",
" 1.280554 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.6050 | \n",
" 0.0 | \n",
" -2.282657 | \n",
" 2.282657 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0800 | \n",
" | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.6850 | \n",
" 0.0 | \n",
" -0.893151 | \n",
" 0.893151 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0400 | \n",
" | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.7250 | \n",
" 0.0 | \n",
" -1.592091 | \n",
" 1.592091 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0800 | \n",
" | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.8050 | \n",
" 0.0 | \n",
" -1.245898 | \n",
" 1.245898 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.0800 | \n",
" | \n",
"
\n",
" \n",
" | 41 | \n",
" 0.8850 | \n",
" 0.0 | \n",
" -1.949965 | \n",
" 1.949965 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.1600 | \n",
" | \n",
"
\n",
" \n",
" | 42 | \n",
" 1.0450 | \n",
" 0.0 | \n",
" -1.101942 | \n",
" 1.101942 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.1600 | \n",
" | \n",
"
\n",
" \n",
" | 43 | \n",
" 1.2050 | \n",
" 0.0 | \n",
" -1.245434 | \n",
" 1.245434 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.3200 | \n",
" | \n",
"
\n",
" \n",
" | 44 | \n",
" 1.5250 | \n",
" 0.0 | \n",
" -0.324354 | \n",
" 0.324354 | \n",
" 1 | \n",
" 0 | \n",
" 1 | \n",
" 0.6400 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" TIME Delta U Delta X Delta S reaction substep time_subdivision \\\n",
"0 0.0000 0.0 -3.000000 3.000000 1 0 1 \n",
"1 0.0000 0.0 -1.500000 1.500000 1 0 1 \n",
"2 0.0050 0.0 -0.701250 0.701250 1 0 1 \n",
"3 0.0075 0.0 -1.359094 1.359094 1 0 1 \n",
"4 0.0125 0.0 -0.638492 0.638492 1 0 1 \n",
"5 0.0150 0.0 -1.240350 1.240350 1 0 1 \n",
"6 0.0200 0.0 -1.170975 1.170975 1 0 1 \n",
"7 0.0250 0.0 -1.108919 1.108919 1 0 1 \n",
"8 0.0300 0.0 -1.053308 1.053308 1 0 1 \n",
"9 0.0350 0.0 -1.003375 1.003375 1 0 1 \n",
"10 0.0400 0.0 -1.916890 1.916890 1 0 1 \n",
"11 0.0500 0.0 -0.877405 0.877405 1 0 1 \n",
"12 0.0550 0.0 -1.689324 1.689324 1 0 1 \n",
"13 0.0650 0.0 -1.570244 1.570244 1 0 1 \n",
"14 0.0750 0.0 -1.472167 1.472167 1 0 1 \n",
"15 0.0850 0.0 -1.390206 1.390206 1 0 1 \n",
"16 0.0950 0.0 -1.320659 1.320659 1 0 1 \n",
"17 0.1050 0.0 -2.521427 2.521427 1 0 1 \n",
"18 0.1250 0.0 -1.155761 1.155761 1 0 1 \n",
"19 0.1350 0.0 -2.229961 2.229961 1 0 1 \n",
"20 0.1550 0.0 -1.040185 1.040185 1 0 1 \n",
"21 0.1650 0.0 -2.016529 2.016529 1 0 1 \n",
"22 0.1850 0.0 -1.895860 1.895860 1 0 1 \n",
"23 0.2050 0.0 -1.787115 1.787115 1 0 1 \n",
"24 0.2250 0.0 -1.687042 1.687042 1 0 1 \n",
"25 0.2450 0.0 -1.593829 1.593829 1 0 1 \n",
"26 0.2650 0.0 -1.506413 1.506413 1 0 1 \n",
"27 0.2850 0.0 -1.424124 1.424124 1 0 1 \n",
"28 0.3050 0.0 -1.346502 1.346502 1 0 1 \n",
"29 0.3250 0.0 -1.273199 1.273199 1 0 1 \n",
"30 0.3450 0.0 -2.407864 2.407864 1 0 1 \n",
"31 0.3850 0.0 -1.072982 1.072982 1 0 1 \n",
"32 0.4050 0.0 -2.029304 2.029304 1 0 1 \n",
"33 0.4450 0.0 -1.808671 1.808671 1 0 1 \n",
"34 0.4850 0.0 -1.612027 1.612027 1 0 1 \n",
"35 0.5250 0.0 -1.436763 1.436763 1 0 1 \n",
"36 0.5650 0.0 -1.280554 1.280554 1 0 1 \n",
"37 0.6050 0.0 -2.282657 2.282657 1 0 1 \n",
"38 0.6850 0.0 -0.893151 0.893151 1 0 1 \n",
"39 0.7250 0.0 -1.592091 1.592091 1 0 1 \n",
"40 0.8050 0.0 -1.245898 1.245898 1 0 1 \n",
"41 0.8850 0.0 -1.949965 1.949965 1 0 1 \n",
"42 1.0450 0.0 -1.101942 1.101942 1 0 1 \n",
"43 1.2050 0.0 -1.245434 1.245434 1 0 1 \n",
"44 1.5250 0.0 -0.324354 0.324354 1 0 1 \n",
"\n",
" delta_time caption \n",
"0 0.0100 \n",
"1 0.0050 \n",
"2 0.0025 \n",
"3 0.0050 \n",
"4 0.0025 \n",
"5 0.0050 \n",
"6 0.0050 \n",
"7 0.0050 \n",
"8 0.0050 \n",
"9 0.0050 \n",
"10 0.0100 \n",
"11 0.0050 \n",
"12 0.0100 \n",
"13 0.0100 \n",
"14 0.0100 \n",
"15 0.0100 \n",
"16 0.0100 \n",
"17 0.0200 \n",
"18 0.0100 \n",
"19 0.0200 \n",
"20 0.0100 \n",
"21 0.0200 \n",
"22 0.0200 \n",
"23 0.0200 \n",
"24 0.0200 \n",
"25 0.0200 \n",
"26 0.0200 \n",
"27 0.0200 \n",
"28 0.0200 \n",
"29 0.0200 \n",
"30 0.0400 \n",
"31 0.0200 \n",
"32 0.0400 \n",
"33 0.0400 \n",
"34 0.0400 \n",
"35 0.0400 \n",
"36 0.0400 \n",
"37 0.0800 \n",
"38 0.0400 \n",
"39 0.0800 \n",
"40 0.0800 \n",
"41 0.1600 \n",
"42 0.1600 \n",
"43 0.3200 \n",
"44 0.6400 "
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.get_diagnostic_rxn_data(rxn_index=1)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "03eec482-0b4a-4a15-ba33-1788f63fc60f",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" TIME | \n",
" U | \n",
" X | \n",
" S | \n",
" is_primary | \n",
" primary_timestep | \n",
" n_substeps | \n",
" substep_number | \n",
" caption | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0000 | \n",
" 50.000000 | \n",
" 100.000000 | \n",
" 0.000000 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.0050 | \n",
" 49.500000 | \n",
" 98.500000 | \n",
" 2.500000 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.0075 | \n",
" 49.302500 | \n",
" 97.798750 | \n",
" 3.596250 | \n",
" True | \n",
" 0.0025 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.0125 | \n",
" 48.953325 | \n",
" 96.439656 | \n",
" 5.653694 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.0150 | \n",
" 48.821632 | \n",
" 95.801164 | \n",
" 6.555571 | \n",
" True | \n",
" 0.0025 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.0200 | \n",
" 48.595639 | \n",
" 94.560814 | \n",
" 8.247909 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.0250 | \n",
" 48.439599 | \n",
" 93.389839 | \n",
" 9.730964 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.0300 | \n",
" 48.344441 | \n",
" 92.280920 | \n",
" 11.030197 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.0350 | \n",
" 48.302205 | \n",
" 91.227612 | \n",
" 12.167978 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.0400 | \n",
" 48.305902 | \n",
" 90.224238 | \n",
" 13.163959 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.0500 | \n",
" 48.392901 | \n",
" 88.307348 | \n",
" 14.906851 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.0550 | \n",
" 48.505246 | \n",
" 87.429943 | \n",
" 15.559566 | \n",
" True | \n",
" 0.0050 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.0650 | \n",
" 48.779906 | \n",
" 85.740619 | \n",
" 16.699569 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.0750 | \n",
" 49.140273 | \n",
" 84.170374 | \n",
" 17.549079 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.0850 | \n",
" 49.561394 | \n",
" 82.698208 | \n",
" 18.179004 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.0950 | \n",
" 50.024487 | \n",
" 81.308002 | \n",
" 18.643025 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.1050 | \n",
" 50.515439 | \n",
" 79.987343 | \n",
" 18.981779 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.1250 | \n",
" 51.531906 | \n",
" 77.465916 | \n",
" 19.470272 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.1350 | \n",
" 52.058890 | \n",
" 76.310155 | \n",
" 19.572066 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.1550 | \n",
" 53.108064 | \n",
" 74.080194 | \n",
" 19.703677 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.1650 | \n",
" 53.622197 | \n",
" 73.040009 | \n",
" 19.715597 | \n",
" True | \n",
" 0.0100 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.1850 | \n",
" 54.631805 | \n",
" 71.023480 | \n",
" 19.712910 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.2050 | \n",
" 55.600598 | \n",
" 69.127620 | \n",
" 19.671183 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.2250 | \n",
" 56.523964 | \n",
" 67.340505 | \n",
" 19.611568 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.2450 | \n",
" 57.400856 | \n",
" 65.653463 | \n",
" 19.544825 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.2650 | \n",
" 58.231994 | \n",
" 64.059634 | \n",
" 19.476378 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.2850 | \n",
" 59.018935 | \n",
" 62.553221 | \n",
" 19.408909 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.3050 | \n",
" 59.763603 | \n",
" 61.129097 | \n",
" 19.343697 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.3250 | \n",
" 60.468050 | \n",
" 59.782595 | \n",
" 19.281305 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.3450 | \n",
" 61.134337 | \n",
" 58.509396 | \n",
" 19.221930 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.3850 | \n",
" 62.394608 | \n",
" 56.101532 | \n",
" 19.109253 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.4050 | \n",
" 62.956304 | \n",
" 55.028550 | \n",
" 19.058842 | \n",
" True | \n",
" 0.0200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.4450 | \n",
" 64.018629 | \n",
" 52.999246 | \n",
" 18.963496 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.4850 | \n",
" 64.965457 | \n",
" 51.190576 | \n",
" 18.878510 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.5250 | \n",
" 65.809344 | \n",
" 49.578549 | \n",
" 18.802763 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.5650 | \n",
" 66.561481 | \n",
" 48.141786 | \n",
" 18.735252 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.6050 | \n",
" 67.231843 | \n",
" 46.861232 | \n",
" 18.675082 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.6850 | \n",
" 68.426800 | \n",
" 44.578576 | \n",
" 18.567824 | \n",
" True | \n",
" 0.0800 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.7250 | \n",
" 68.894360 | \n",
" 43.685424 | \n",
" 18.525856 | \n",
" True | \n",
" 0.0400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.8050 | \n",
" 69.727810 | \n",
" 42.093333 | \n",
" 18.451046 | \n",
" True | \n",
" 0.0800 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.8850 | \n",
" 70.380030 | \n",
" 40.847436 | \n",
" 18.392504 | \n",
" True | \n",
" 0.0800 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 41 | \n",
" 1.0450 | \n",
" 71.400826 | \n",
" 38.897470 | \n",
" 18.300879 | \n",
" True | \n",
" 0.1600 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 42 | \n",
" 1.2050 | \n",
" 71.977686 | \n",
" 37.795528 | \n",
" 18.249100 | \n",
" True | \n",
" 0.1600 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 43 | \n",
" 1.5250 | \n",
" 72.629663 | \n",
" 36.550094 | \n",
" 18.190579 | \n",
" True | \n",
" 0.3200 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
" | 44 | \n",
" 2.1650 | \n",
" 72.799461 | \n",
" 36.225739 | \n",
" 18.175339 | \n",
" True | \n",
" 0.6400 | \n",
" 1 | \n",
" 0 | \n",
" | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" TIME U X S is_primary primary_timestep \\\n",
"0 0.0000 50.000000 100.000000 0.000000 True 0.0100 \n",
"1 0.0050 49.500000 98.500000 2.500000 True 0.0100 \n",
"2 0.0075 49.302500 97.798750 3.596250 True 0.0025 \n",
"3 0.0125 48.953325 96.439656 5.653694 True 0.0050 \n",
"4 0.0150 48.821632 95.801164 6.555571 True 0.0025 \n",
"5 0.0200 48.595639 94.560814 8.247909 True 0.0050 \n",
"6 0.0250 48.439599 93.389839 9.730964 True 0.0050 \n",
"7 0.0300 48.344441 92.280920 11.030197 True 0.0050 \n",
"8 0.0350 48.302205 91.227612 12.167978 True 0.0050 \n",
"9 0.0400 48.305902 90.224238 13.163959 True 0.0050 \n",
"10 0.0500 48.392901 88.307348 14.906851 True 0.0100 \n",
"11 0.0550 48.505246 87.429943 15.559566 True 0.0050 \n",
"12 0.0650 48.779906 85.740619 16.699569 True 0.0100 \n",
"13 0.0750 49.140273 84.170374 17.549079 True 0.0100 \n",
"14 0.0850 49.561394 82.698208 18.179004 True 0.0100 \n",
"15 0.0950 50.024487 81.308002 18.643025 True 0.0100 \n",
"16 0.1050 50.515439 79.987343 18.981779 True 0.0100 \n",
"17 0.1250 51.531906 77.465916 19.470272 True 0.0200 \n",
"18 0.1350 52.058890 76.310155 19.572066 True 0.0100 \n",
"19 0.1550 53.108064 74.080194 19.703677 True 0.0200 \n",
"20 0.1650 53.622197 73.040009 19.715597 True 0.0100 \n",
"21 0.1850 54.631805 71.023480 19.712910 True 0.0200 \n",
"22 0.2050 55.600598 69.127620 19.671183 True 0.0200 \n",
"23 0.2250 56.523964 67.340505 19.611568 True 0.0200 \n",
"24 0.2450 57.400856 65.653463 19.544825 True 0.0200 \n",
"25 0.2650 58.231994 64.059634 19.476378 True 0.0200 \n",
"26 0.2850 59.018935 62.553221 19.408909 True 0.0200 \n",
"27 0.3050 59.763603 61.129097 19.343697 True 0.0200 \n",
"28 0.3250 60.468050 59.782595 19.281305 True 0.0200 \n",
"29 0.3450 61.134337 58.509396 19.221930 True 0.0200 \n",
"30 0.3850 62.394608 56.101532 19.109253 True 0.0400 \n",
"31 0.4050 62.956304 55.028550 19.058842 True 0.0200 \n",
"32 0.4450 64.018629 52.999246 18.963496 True 0.0400 \n",
"33 0.4850 64.965457 51.190576 18.878510 True 0.0400 \n",
"34 0.5250 65.809344 49.578549 18.802763 True 0.0400 \n",
"35 0.5650 66.561481 48.141786 18.735252 True 0.0400 \n",
"36 0.6050 67.231843 46.861232 18.675082 True 0.0400 \n",
"37 0.6850 68.426800 44.578576 18.567824 True 0.0800 \n",
"38 0.7250 68.894360 43.685424 18.525856 True 0.0400 \n",
"39 0.8050 69.727810 42.093333 18.451046 True 0.0800 \n",
"40 0.8850 70.380030 40.847436 18.392504 True 0.0800 \n",
"41 1.0450 71.400826 38.897470 18.300879 True 0.1600 \n",
"42 1.2050 71.977686 37.795528 18.249100 True 0.1600 \n",
"43 1.5250 72.629663 36.550094 18.190579 True 0.3200 \n",
"44 2.1650 72.799461 36.225739 18.175339 True 0.6400 \n",
"\n",
" n_substeps substep_number caption \n",
"0 1 0 \n",
"1 1 0 \n",
"2 1 0 \n",
"3 1 0 \n",
"4 1 0 \n",
"5 1 0 \n",
"6 1 0 \n",
"7 1 0 \n",
"8 1 0 \n",
"9 1 0 \n",
"10 1 0 \n",
"11 1 0 \n",
"12 1 0 \n",
"13 1 0 \n",
"14 1 0 \n",
"15 1 0 \n",
"16 1 0 \n",
"17 1 0 \n",
"18 1 0 \n",
"19 1 0 \n",
"20 1 0 \n",
"21 1 0 \n",
"22 1 0 \n",
"23 1 0 \n",
"24 1 0 \n",
"25 1 0 \n",
"26 1 0 \n",
"27 1 0 \n",
"28 1 0 \n",
"29 1 0 \n",
"30 1 0 \n",
"31 1 0 \n",
"32 1 0 \n",
"33 1 0 \n",
"34 1 0 \n",
"35 1 0 \n",
"36 1 0 \n",
"37 1 0 \n",
"38 1 0 \n",
"39 1 0 \n",
"40 1 0 \n",
"41 1 0 \n",
"42 1 0 \n",
"43 1 0 \n",
"44 1 0 "
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.get_diagnostic_conc_data()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "a479c269-4740-4866-9ec3-e736b8b09cb6",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" TIME | \n",
" Delta U | \n",
" Delta X | \n",
" Delta S | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0000 | \n",
" -1.000000 | \n",
" -3.000000 | \n",
" 5.000000 | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.0000 | \n",
" -0.500000 | \n",
" -1.500000 | \n",
" 2.500000 | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.0050 | \n",
" -0.197500 | \n",
" -0.701250 | \n",
" 1.096250 | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.0075 | \n",
" -0.349175 | \n",
" -1.359094 | \n",
" 2.057444 | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.0125 | \n",
" -0.131693 | \n",
" -0.638492 | \n",
" 0.901878 | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.0150 | \n",
" -0.225993 | \n",
" -1.240350 | \n",
" 1.692337 | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.0200 | \n",
" -0.156040 | \n",
" -1.170975 | \n",
" 1.483055 | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.0250 | \n",
" -0.095157 | \n",
" -1.108919 | \n",
" 1.299234 | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.0300 | \n",
" -0.042237 | \n",
" -1.053308 | \n",
" 1.137781 | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.0350 | \n",
" 0.003697 | \n",
" -1.003375 | \n",
" 0.995981 | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.0400 | \n",
" 0.086999 | \n",
" -1.916890 | \n",
" 1.742892 | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.0500 | \n",
" 0.112345 | \n",
" -0.877405 | \n",
" 0.652715 | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.0550 | \n",
" 0.274660 | \n",
" -1.689324 | \n",
" 1.140004 | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.0650 | \n",
" 0.360367 | \n",
" -1.570244 | \n",
" 0.849510 | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.0750 | \n",
" 0.421121 | \n",
" -1.472167 | \n",
" 0.629925 | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.0850 | \n",
" 0.463092 | \n",
" -1.390206 | \n",
" 0.464021 | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.0950 | \n",
" 0.490952 | \n",
" -1.320659 | \n",
" 0.338754 | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.1050 | \n",
" 1.016467 | \n",
" -2.521427 | \n",
" 0.488493 | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.1250 | \n",
" 0.526984 | \n",
" -1.155761 | \n",
" 0.101794 | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.1350 | \n",
" 1.049175 | \n",
" -2.229961 | \n",
" 0.131612 | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.1550 | \n",
" 0.514133 | \n",
" -1.040185 | \n",
" 0.011919 | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.1650 | \n",
" 1.009608 | \n",
" -2.016529 | \n",
" -0.002686 | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.1850 | \n",
" 0.968793 | \n",
" -1.895860 | \n",
" -0.041727 | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.2050 | \n",
" 0.923365 | \n",
" -1.787115 | \n",
" -0.059615 | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.2250 | \n",
" 0.876892 | \n",
" -1.687042 | \n",
" -0.066742 | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.2450 | \n",
" 0.831138 | \n",
" -1.593829 | \n",
" -0.068447 | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.2650 | \n",
" 0.786941 | \n",
" -1.506413 | \n",
" -0.067469 | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.2850 | \n",
" 0.744668 | \n",
" -1.424124 | \n",
" -0.065212 | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.3050 | \n",
" 0.704447 | \n",
" -1.346502 | \n",
" -0.062393 | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.3250 | \n",
" 0.666287 | \n",
" -1.273199 | \n",
" -0.059374 | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.3450 | \n",
" 1.260271 | \n",
" -2.407864 | \n",
" -0.112677 | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.3850 | \n",
" 0.561696 | \n",
" -1.072982 | \n",
" -0.050411 | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.4050 | \n",
" 1.062325 | \n",
" -2.029304 | \n",
" -0.095347 | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.4450 | \n",
" 0.946828 | \n",
" -1.808671 | \n",
" -0.084986 | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.4850 | \n",
" 0.843887 | \n",
" -1.612027 | \n",
" -0.075746 | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.5250 | \n",
" 0.752137 | \n",
" -1.436763 | \n",
" -0.067511 | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.5650 | \n",
" 0.670362 | \n",
" -1.280554 | \n",
" -0.060171 | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.6050 | \n",
" 1.194957 | \n",
" -2.282657 | \n",
" -0.107258 | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.6850 | \n",
" 0.467560 | \n",
" -0.893151 | \n",
" -0.041968 | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.7250 | \n",
" 0.833450 | \n",
" -1.592091 | \n",
" -0.074810 | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.8050 | \n",
" 0.652220 | \n",
" -1.245898 | \n",
" -0.058543 | \n",
"
\n",
" \n",
" | 41 | \n",
" 0.8850 | \n",
" 1.020795 | \n",
" -1.949965 | \n",
" -0.091625 | \n",
"
\n",
" \n",
" | 42 | \n",
" 1.0450 | \n",
" 0.576860 | \n",
" -1.101942 | \n",
" -0.051778 | \n",
"
\n",
" \n",
" | 43 | \n",
" 1.2050 | \n",
" 0.651978 | \n",
" -1.245434 | \n",
" -0.058521 | \n",
"
\n",
" \n",
" | 44 | \n",
" 1.5250 | \n",
" 0.169798 | \n",
" -0.324354 | \n",
" -0.015241 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" TIME Delta U Delta X Delta S\n",
"0 0.0000 -1.000000 -3.000000 5.000000\n",
"1 0.0000 -0.500000 -1.500000 2.500000\n",
"2 0.0050 -0.197500 -0.701250 1.096250\n",
"3 0.0075 -0.349175 -1.359094 2.057444\n",
"4 0.0125 -0.131693 -0.638492 0.901878\n",
"5 0.0150 -0.225993 -1.240350 1.692337\n",
"6 0.0200 -0.156040 -1.170975 1.483055\n",
"7 0.0250 -0.095157 -1.108919 1.299234\n",
"8 0.0300 -0.042237 -1.053308 1.137781\n",
"9 0.0350 0.003697 -1.003375 0.995981\n",
"10 0.0400 0.086999 -1.916890 1.742892\n",
"11 0.0500 0.112345 -0.877405 0.652715\n",
"12 0.0550 0.274660 -1.689324 1.140004\n",
"13 0.0650 0.360367 -1.570244 0.849510\n",
"14 0.0750 0.421121 -1.472167 0.629925\n",
"15 0.0850 0.463092 -1.390206 0.464021\n",
"16 0.0950 0.490952 -1.320659 0.338754\n",
"17 0.1050 1.016467 -2.521427 0.488493\n",
"18 0.1250 0.526984 -1.155761 0.101794\n",
"19 0.1350 1.049175 -2.229961 0.131612\n",
"20 0.1550 0.514133 -1.040185 0.011919\n",
"21 0.1650 1.009608 -2.016529 -0.002686\n",
"22 0.1850 0.968793 -1.895860 -0.041727\n",
"23 0.2050 0.923365 -1.787115 -0.059615\n",
"24 0.2250 0.876892 -1.687042 -0.066742\n",
"25 0.2450 0.831138 -1.593829 -0.068447\n",
"26 0.2650 0.786941 -1.506413 -0.067469\n",
"27 0.2850 0.744668 -1.424124 -0.065212\n",
"28 0.3050 0.704447 -1.346502 -0.062393\n",
"29 0.3250 0.666287 -1.273199 -0.059374\n",
"30 0.3450 1.260271 -2.407864 -0.112677\n",
"31 0.3850 0.561696 -1.072982 -0.050411\n",
"32 0.4050 1.062325 -2.029304 -0.095347\n",
"33 0.4450 0.946828 -1.808671 -0.084986\n",
"34 0.4850 0.843887 -1.612027 -0.075746\n",
"35 0.5250 0.752137 -1.436763 -0.067511\n",
"36 0.5650 0.670362 -1.280554 -0.060171\n",
"37 0.6050 1.194957 -2.282657 -0.107258\n",
"38 0.6850 0.467560 -0.893151 -0.041968\n",
"39 0.7250 0.833450 -1.592091 -0.074810\n",
"40 0.8050 0.652220 -1.245898 -0.058543\n",
"41 0.8850 1.020795 -1.949965 -0.091625\n",
"42 1.0450 0.576860 -1.101942 -0.051778\n",
"43 1.2050 0.651978 -1.245434 -0.058521\n",
"44 1.5250 0.169798 -0.324354 -0.015241"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.get_diagnostic_delta_data()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "b4d5101f-f3c9-4e0c-a9ae-e2774136a88a",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" TIME | \n",
" Delta U | \n",
" Delta X | \n",
" Delta S | \n",
" L2 | \n",
" actions | \n",
" step_factors | \n",
"
\n",
" \n",
" \n",
" \n",
" | 0 | \n",
" 0.0000 | \n",
" -1.000000 | \n",
" -3.000000 | \n",
" 5.000000 | \n",
" 1.972027 | \n",
" ABORT | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 1 | \n",
" 0.0000 | \n",
" -0.500000 | \n",
" -1.500000 | \n",
" 2.500000 | \n",
" 0.986013 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 2 | \n",
" 0.0050 | \n",
" -0.197500 | \n",
" -0.701250 | \n",
" 1.096250 | \n",
" 0.438751 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 3 | \n",
" 0.0075 | \n",
" -0.349175 | \n",
" -1.359094 | \n",
" 2.057444 | \n",
" 0.830136 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 4 | \n",
" 0.0125 | \n",
" -0.131693 | \n",
" -0.638492 | \n",
" 0.901878 | \n",
" 0.370944 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 5 | \n",
" 0.0150 | \n",
" -0.225993 | \n",
" -1.240350 | \n",
" 1.692337 | \n",
" 0.703448 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 6 | \n",
" 0.0200 | \n",
" -0.156040 | \n",
" -1.170975 | \n",
" 1.483055 | \n",
" 0.632015 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 7 | \n",
" 0.0250 | \n",
" -0.095157 | \n",
" -1.108919 | \n",
" 1.299234 | \n",
" 0.570260 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 8 | \n",
" 0.0300 | \n",
" -0.042237 | \n",
" -1.053308 | \n",
" 1.137781 | \n",
" 0.517020 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 9 | \n",
" 0.0350 | \n",
" 0.003697 | \n",
" -1.003375 | \n",
" 0.995981 | \n",
" 0.471257 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 10 | \n",
" 0.0400 | \n",
" 0.086999 | \n",
" -1.916890 | \n",
" 1.742892 | \n",
" 0.864080 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 11 | \n",
" 0.0500 | \n",
" 0.112345 | \n",
" -0.877405 | \n",
" 0.652715 | \n",
" 0.366439 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 12 | \n",
" 0.0550 | \n",
" 0.274660 | \n",
" -1.689324 | \n",
" 1.140004 | \n",
" 0.685473 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 13 | \n",
" 0.0650 | \n",
" 0.360367 | \n",
" -1.570244 | \n",
" 0.849510 | \n",
" 0.607106 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 14 | \n",
" 0.0750 | \n",
" 0.421121 | \n",
" -1.472167 | \n",
" 0.629925 | \n",
" 0.551908 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 15 | \n",
" 0.0850 | \n",
" 0.463092 | \n",
" -1.390206 | \n",
" 0.464021 | \n",
" 0.512341 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 16 | \n",
" 0.0950 | \n",
" 0.490952 | \n",
" -1.320659 | \n",
" 0.338754 | \n",
" 0.483038 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 17 | \n",
" 0.1050 | \n",
" 1.016467 | \n",
" -2.521427 | \n",
" 0.488493 | \n",
" 0.920714 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 18 | \n",
" 0.1250 | \n",
" 0.526984 | \n",
" -1.155761 | \n",
" 0.101794 | \n",
" 0.424769 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 19 | \n",
" 0.1350 | \n",
" 1.049175 | \n",
" -2.229961 | \n",
" 0.131612 | \n",
" 0.822653 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 20 | \n",
" 0.1550 | \n",
" 0.514133 | \n",
" -1.040185 | \n",
" 0.011919 | \n",
" 0.386790 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 21 | \n",
" 0.1650 | \n",
" 1.009608 | \n",
" -2.016529 | \n",
" -0.002686 | \n",
" 0.751717 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 22 | \n",
" 0.1850 | \n",
" 0.968793 | \n",
" -1.895860 | \n",
" -0.041727 | \n",
" 0.709819 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 23 | \n",
" 0.2050 | \n",
" 0.923365 | \n",
" -1.787115 | \n",
" -0.059615 | \n",
" 0.670815 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 24 | \n",
" 0.2250 | \n",
" 0.876892 | \n",
" -1.687042 | \n",
" -0.066742 | \n",
" 0.634167 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 25 | \n",
" 0.2450 | \n",
" 0.831138 | \n",
" -1.593829 | \n",
" -0.068447 | \n",
" 0.599608 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 26 | \n",
" 0.2650 | \n",
" 0.786941 | \n",
" -1.506413 | \n",
" -0.067469 | \n",
" 0.566971 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 27 | \n",
" 0.2850 | \n",
" 0.744668 | \n",
" -1.424124 | \n",
" -0.065212 | \n",
" 0.536129 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 28 | \n",
" 0.3050 | \n",
" 0.704447 | \n",
" -1.346502 | \n",
" -0.062393 | \n",
" 0.506974 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 29 | \n",
" 0.3250 | \n",
" 0.666287 | \n",
" -1.273199 | \n",
" -0.059374 | \n",
" 0.479409 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 30 | \n",
" 0.3450 | \n",
" 1.260271 | \n",
" -2.407864 | \n",
" -0.112677 | \n",
" 0.906690 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 31 | \n",
" 0.3850 | \n",
" 0.561696 | \n",
" -1.072982 | \n",
" -0.050411 | \n",
" 0.404054 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 32 | \n",
" 0.4050 | \n",
" 1.062325 | \n",
" -2.029304 | \n",
" -0.095347 | \n",
" 0.764177 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 33 | \n",
" 0.4450 | \n",
" 0.946828 | \n",
" -1.808671 | \n",
" -0.084986 | \n",
" 0.681094 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 34 | \n",
" 0.4850 | \n",
" 0.843887 | \n",
" -1.612027 | \n",
" -0.075746 | \n",
" 0.607043 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 35 | \n",
" 0.5250 | \n",
" 0.752137 | \n",
" -1.436763 | \n",
" -0.067511 | \n",
" 0.541044 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 36 | \n",
" 0.5650 | \n",
" 0.670362 | \n",
" -1.280554 | \n",
" -0.060171 | \n",
" 0.482220 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 37 | \n",
" 0.6050 | \n",
" 1.194957 | \n",
" -2.282657 | \n",
" -0.107258 | \n",
" 0.859583 | \n",
" OK | \n",
" 0.5 | \n",
"
\n",
" \n",
" | 38 | \n",
" 0.6850 | \n",
" 0.467560 | \n",
" -0.893151 | \n",
" -0.041968 | \n",
" 0.336335 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 39 | \n",
" 0.7250 | \n",
" 0.833450 | \n",
" -1.592091 | \n",
" -0.074810 | \n",
" 0.599536 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 40 | \n",
" 0.8050 | \n",
" 0.652220 | \n",
" -1.245898 | \n",
" -0.058543 | \n",
" 0.469169 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 41 | \n",
" 0.8850 | \n",
" 1.020795 | \n",
" -1.949965 | \n",
" -0.091625 | \n",
" 0.734301 | \n",
" OK | \n",
" 1.0 | \n",
"
\n",
" \n",
" | 42 | \n",
" 1.0450 | \n",
" 0.576860 | \n",
" -1.101942 | \n",
" -0.051778 | \n",
" 0.414960 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 43 | \n",
" 1.2050 | \n",
" 0.651978 | \n",
" -1.245434 | \n",
" -0.058521 | \n",
" 0.468995 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
" | 44 | \n",
" 1.5250 | \n",
" 0.169798 | \n",
" -0.324354 | \n",
" -0.015241 | \n",
" 0.122143 | \n",
" OK | \n",
" 2.0 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" TIME Delta U Delta X Delta S L2 actions step_factors\n",
"0 0.0000 -1.000000 -3.000000 5.000000 1.972027 ABORT 0.5\n",
"1 0.0000 -0.500000 -1.500000 2.500000 0.986013 OK 0.5\n",
"2 0.0050 -0.197500 -0.701250 1.096250 0.438751 OK 2.0\n",
"3 0.0075 -0.349175 -1.359094 2.057444 0.830136 OK 0.5\n",
"4 0.0125 -0.131693 -0.638492 0.901878 0.370944 OK 2.0\n",
"5 0.0150 -0.225993 -1.240350 1.692337 0.703448 OK 1.0\n",
"6 0.0200 -0.156040 -1.170975 1.483055 0.632015 OK 1.0\n",
"7 0.0250 -0.095157 -1.108919 1.299234 0.570260 OK 1.0\n",
"8 0.0300 -0.042237 -1.053308 1.137781 0.517020 OK 1.0\n",
"9 0.0350 0.003697 -1.003375 0.995981 0.471257 OK 2.0\n",
"10 0.0400 0.086999 -1.916890 1.742892 0.864080 OK 0.5\n",
"11 0.0500 0.112345 -0.877405 0.652715 0.366439 OK 2.0\n",
"12 0.0550 0.274660 -1.689324 1.140004 0.685473 OK 1.0\n",
"13 0.0650 0.360367 -1.570244 0.849510 0.607106 OK 1.0\n",
"14 0.0750 0.421121 -1.472167 0.629925 0.551908 OK 1.0\n",
"15 0.0850 0.463092 -1.390206 0.464021 0.512341 OK 1.0\n",
"16 0.0950 0.490952 -1.320659 0.338754 0.483038 OK 2.0\n",
"17 0.1050 1.016467 -2.521427 0.488493 0.920714 OK 0.5\n",
"18 0.1250 0.526984 -1.155761 0.101794 0.424769 OK 2.0\n",
"19 0.1350 1.049175 -2.229961 0.131612 0.822653 OK 0.5\n",
"20 0.1550 0.514133 -1.040185 0.011919 0.386790 OK 2.0\n",
"21 0.1650 1.009608 -2.016529 -0.002686 0.751717 OK 1.0\n",
"22 0.1850 0.968793 -1.895860 -0.041727 0.709819 OK 1.0\n",
"23 0.2050 0.923365 -1.787115 -0.059615 0.670815 OK 1.0\n",
"24 0.2250 0.876892 -1.687042 -0.066742 0.634167 OK 1.0\n",
"25 0.2450 0.831138 -1.593829 -0.068447 0.599608 OK 1.0\n",
"26 0.2650 0.786941 -1.506413 -0.067469 0.566971 OK 1.0\n",
"27 0.2850 0.744668 -1.424124 -0.065212 0.536129 OK 1.0\n",
"28 0.3050 0.704447 -1.346502 -0.062393 0.506974 OK 1.0\n",
"29 0.3250 0.666287 -1.273199 -0.059374 0.479409 OK 2.0\n",
"30 0.3450 1.260271 -2.407864 -0.112677 0.906690 OK 0.5\n",
"31 0.3850 0.561696 -1.072982 -0.050411 0.404054 OK 2.0\n",
"32 0.4050 1.062325 -2.029304 -0.095347 0.764177 OK 1.0\n",
"33 0.4450 0.946828 -1.808671 -0.084986 0.681094 OK 1.0\n",
"34 0.4850 0.843887 -1.612027 -0.075746 0.607043 OK 1.0\n",
"35 0.5250 0.752137 -1.436763 -0.067511 0.541044 OK 1.0\n",
"36 0.5650 0.670362 -1.280554 -0.060171 0.482220 OK 2.0\n",
"37 0.6050 1.194957 -2.282657 -0.107258 0.859583 OK 0.5\n",
"38 0.6850 0.467560 -0.893151 -0.041968 0.336335 OK 2.0\n",
"39 0.7250 0.833450 -1.592091 -0.074810 0.599536 OK 1.0\n",
"40 0.8050 0.652220 -1.245898 -0.058543 0.469169 OK 2.0\n",
"41 0.8850 1.020795 -1.949965 -0.091625 0.734301 OK 1.0\n",
"42 1.0450 0.576860 -1.101942 -0.051778 0.414960 OK 2.0\n",
"43 1.2050 0.651978 -1.245434 -0.058521 0.468995 OK 2.0\n",
"44 1.5250 0.169798 -0.324354 -0.015241 0.122143 OK 2.0"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dynamics.get_diagnostic_L2_data()"
]
},
{
"cell_type": "markdown",
"id": "ab5ebd8c-590d-4d35-8463-3f70e8859c99",
"metadata": {},
"source": [
"#### Notice how the first step got aborted, and re-run, because of the large adjusted L2 value in the concentrations "
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "c9469a67-c513-492a-8bff-a20d0958ba39",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"jupytext": {
"formats": "ipynb,py:percent"
},
"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
}