{ "cells": [ { "cell_type": "markdown", "id": "5cbc8640", "metadata": {}, "source": [ "### Adaptive time steps (variable time resolution) for reaction `A <-> B`,\n", "with 1st-order kinetics in both directions, taken to equilibrium\n", "\n", "Same as the experiment _\"react_1\"_ , but with adaptive variable time steps\n", "\n", "LAST REVISED: May 22, 2023" ] }, { "cell_type": "code", "execution_count": 1, "id": "b01eafc2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Added 'D:\\Docs\\- MY CODE\\BioSimulations\\life123-Win7' to sys.path\n" ] } ], "source": [ "import set_path # Importing this module will add the project's home directory +to sys.path" ] }, { "cell_type": "code", "execution_count": 2, "id": "85b2f63e", "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 pandas as pd\n", "import plotly.express as px\n", "from src.modules.visualization.graphic_log import GraphicLog" ] }, { "cell_type": "code", "execution_count": 3, "id": "121fdfdd", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-> Output will be LOGGED into the file 'react_2.log.htm'\n" ] } ], "source": [ "# Initialize the HTML logging (for the graphics)\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": "10c710ac", "metadata": {}, "source": [ "# Initialize the System\n", "Specify the chemicals and the reactions" ] }, { "cell_type": "code", "execution_count": 4, "id": "78077d8c", "metadata": { "tags": [] }, "outputs": [], "source": [ "# Specify the chemicals\n", "chem_data = chem(names=[\"A\", \"B\"])\n", "\n", "# Reaction A <-> B , with 1st-order kinetics in both directions\n", "chem_data.add_reaction(reactants=[\"A\"], products=[\"B\"], \n", " forward_rate=3., reverse_rate=2.)" ] }, { "cell_type": "code", "execution_count": 5, "id": "58433072", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of reactions: 1 (at temp. 25 C)\n", "0: A <-> B (kF = 3 / kR = 2 / Delta_G = -1,005.13 / K = 1.5) | 1st order in all reactants & products\n" ] } ], "source": [ "chem_data.describe_reactions()" ] }, { "cell_type": "code", "execution_count": 6, "id": "373afeb1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[GRAPHIC ELEMENT SENT TO LOG FILE `react_2.log.htm`]\n" ] } ], "source": [ "# Send a plot of the network of reactions 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": "e0529a0c", "metadata": {}, "source": [ "# Start the simulation" ] }, { "cell_type": "code", "execution_count": 7, "id": "f9736433", "metadata": {}, "outputs": [], "source": [ "dynamics = ReactionDynamics(reaction_data=chem_data)" ] }, { "cell_type": "code", "execution_count": 8, "id": "9fc3948d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "2 species:\n", " Species 0 (A). Conc: 10.0\n", " Species 1 (B). Conc: 50.0\n" ] } ], "source": [ "# Initial concentrations of all the chemicals, in index order\n", "dynamics.set_conc([10., 50.])\n", "\n", "dynamics.describe_state()" ] }, { "cell_type": "code", "execution_count": 9, "id": "0cc938cc", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABcaption
00.010.050.0Initial state
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "0 0.0 10.0 50.0 Initial state" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_history()" ] }, { "cell_type": "markdown", "id": "987af2c5", "metadata": { "tags": [] }, "source": [ "## Run the reaction" ] }, { "cell_type": "code", "execution_count": 10, "id": "c4595dd6-ddfa-4715-b2fc-07255a004681", "metadata": {}, "outputs": [], "source": [ "dynamics.set_diagnostics() # To save diagnostic information about the call to single_compartment_react()\n", "\n", "# All of these settings are currently close to the default values... but subject to change; set for repeatability\n", "dynamics.set_thresholds(norm=\"norm_A\", low=0.5, high=0.8, abort=1.44)\n", "dynamics.set_thresholds(norm=\"norm_B\") # This has the effect of turning off use of \"norm_B\"\n", "dynamics.set_step_factors(upshift=2.0, downshift=0.5, abort=0.5)\n", "dynamics.set_error_step_factor(0.5)" ] }, { "cell_type": "code", "execution_count": 11, "id": "6e0f0c53-df11-4691-b142-fa16adb2946b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'norm': 'norm_A', 'low': 0.5, 'high': 0.8, 'abort': 1.44}]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.thresholds" ] }, { "cell_type": "markdown", "id": "5f35340a-7baf-49ee-90ae-b5b71a8b1a5e", "metadata": {}, "source": [ "#### Note how we UNSET the defaults for \"norm_B\" (i.e. it won't be used)" ] }, { "cell_type": "code", "execution_count": 12, "id": "43735178-313b-48cf-a583-5181238feac3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "INFO: the tentative time step (0.1) leads to a least one norm value > its ABORT threshold:\n", " -> will backtrack, and re-do step with a SMALLER delta time, multiplied by 0.5 (set to 0.05) [Step started at t=0, and will rewind there]\n", "INFO: the tentative time step (0.05) leads to a least one norm value > its ABORT threshold:\n", " -> will backtrack, and re-do step with a SMALLER delta time, multiplied by 0.5 (set to 0.025) [Step started at t=0, and will rewind there]\n", "INFO: the tentative time step (0.025) leads to a least one norm value > its ABORT threshold:\n", " -> will backtrack, and re-do step with a SMALLER delta time, multiplied by 0.5 (set to 0.0125) [Step started at t=0, and will rewind there]\n", "Some steps were backtracked and re-done, to prevent negative concentrations or excessively large concentration changes\n", "16 total step(s) taken\n" ] } ], "source": [ "dynamics.single_compartment_react(initial_step=0.1, target_end_time=1.2,\n", " variable_steps=True, explain_variable_steps=False,\n", " snapshots={\"initial_caption\": \"1st reaction step\",\n", " \"final_caption\": \"last reaction step\"}\n", " )" ] }, { "cell_type": "markdown", "id": "2169c3b3", "metadata": {}, "source": [ "## The flag _variable_steps_ automatically adjusts up or down the time step, whenever the changes of concentrations are, respectively, \"slow\" or \"fast\" (as determined using the specified _thresholds_ )" ] }, { "cell_type": "code", "execution_count": 13, "id": "2d5df59c", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABcaption
00.000010.00000050.000000Initial state
10.012510.87500049.1250001st reaction step
20.037512.51562547.484375
30.050013.23339846.766602
40.075014.57922445.420776
50.087515.16802244.831978
60.112516.27201943.727981
70.137517.23801742.761983
80.187518.92851341.071487
90.212519.56244940.437551
100.262520.67183639.328164
110.312521.50387738.496123
120.412522.75193937.248061
130.512523.37596936.624031
140.712524.00000036.000000
151.112524.00000036.000000
161.912524.00000036.000000last reaction step
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "0 0.0000 10.000000 50.000000 Initial state\n", "1 0.0125 10.875000 49.125000 1st reaction step\n", "2 0.0375 12.515625 47.484375 \n", "3 0.0500 13.233398 46.766602 \n", "4 0.0750 14.579224 45.420776 \n", "5 0.0875 15.168022 44.831978 \n", "6 0.1125 16.272019 43.727981 \n", "7 0.1375 17.238017 42.761983 \n", "8 0.1875 18.928513 41.071487 \n", "9 0.2125 19.562449 40.437551 \n", "10 0.2625 20.671836 39.328164 \n", "11 0.3125 21.503877 38.496123 \n", "12 0.4125 22.751939 37.248061 \n", "13 0.5125 23.375969 36.624031 \n", "14 0.7125 24.000000 36.000000 \n", "15 1.1125 24.000000 36.000000 \n", "16 1.9125 24.000000 36.000000 last reaction step" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_history() # The system's history, saved during the run of single_compartment_react()" ] }, { "cell_type": "code", "execution_count": 14, "id": "1092029f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "From time 0 to 0.0125, in 1 step of 0.0125\n", "From time 0.0125 to 0.0375, in 1 step of 0.025\n", "From time 0.0375 to 0.05, in 1 step of 0.0125\n", "From time 0.05 to 0.075, in 1 step of 0.025\n", "From time 0.075 to 0.0875, in 1 step of 0.0125\n", "From time 0.0875 to 0.1375, in 2 steps of 0.025\n", "From time 0.1375 to 0.1875, in 1 step of 0.05\n", "From time 0.1875 to 0.2125, in 1 step of 0.025\n", "From time 0.2125 to 0.3125, in 2 steps of 0.05\n", "From time 0.3125 to 0.5125, in 2 steps of 0.1\n", "From time 0.5125 to 0.7125, in 1 step of 0.2\n", "From time 0.7125 to 1.112, in 1 step of 0.4\n", "From time 1.112 to 1.912, in 1 step of 0.8\n", "(16 steps total)\n" ] } ], "source": [ "dynamics.explain_time_advance()" ] }, { "cell_type": "markdown", "id": "edb7c015", "metadata": { "tags": [] }, "source": [ "## Notice how the reaction proceeds in smaller steps in the early times, when [A] and [B] are changing much more rapidly\n", "### That resulted from passing the flag _variable_steps=True_ to single_compartment_react()" ] }, { "cell_type": "markdown", "id": "766e8bba-3a15-461e-9bf6-9daf509197d5", "metadata": { "tags": [] }, "source": [ "# Scrutinizing some instances of step-size changes:" ] }, { "cell_type": "markdown", "id": "6047485b", "metadata": { "tags": [] }, "source": [ "### Detailed Example 1: **going from 0.1375 to 0.1875** " ] }, { "cell_type": "code", "execution_count": 15, "id": "d13ebde0-4f12-47f2-b5f0-28e0f7a8f6c0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABcaption
70.137517.23801742.761983
80.187518.92851341.071487
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "7 0.1375 17.238017 42.761983 \n", "8 0.1875 18.928513 41.071487 " ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lookup = dynamics.get_history(t_start=0.1375, t_end=0.1875)\n", "lookup" ] }, { "cell_type": "code", "execution_count": 16, "id": "d7c7164a-0350-4549-874a-5084a04160a5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 1.6904957, -1.6904957], dtype=float32)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "delta_concentrations = dynamics.extract_delta_concentrations(lookup, 7, 8, ['A', 'B'])\n", "delta_concentrations" ] }, { "cell_type": "markdown", "id": "2127ef7d", "metadata": {}, "source": [ "As expected by the 1:1 stoichiometry, delta_A = - delta_B\n", "\n", "The above values coud also be looked up from the diagnostic data, since we only have 1 reaction:" ] }, { "cell_type": "code", "execution_count": 17, "id": "0ffe1206-5528-4f6e-8dc8-8a8bc450a8e5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: A <-> B\n" ] } ], "source": [ "rxn_data = dynamics.get_diagnostic_rxn_data(rxn_index=0)" ] }, { "cell_type": "code", "execution_count": 18, "id": "8e245671-84e5-4e20-92f1-cd28191c6343", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
START_TIMEDelta ADelta Btime_stepcaption
80.08751.103997-1.1039970.025
90.11250.965998-0.9659980.025
100.13751.690496-1.6904960.050
110.18750.633936-0.6339360.025
\n", "
" ], "text/plain": [ " START_TIME Delta A Delta B time_step caption\n", "8 0.0875 1.103997 -1.103997 0.025 \n", "9 0.1125 0.965998 -0.965998 0.025 \n", "10 0.1375 1.690496 -1.690496 0.050 \n", "11 0.1875 0.633936 -0.633936 0.025 " ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rxn_data[8:12]" ] }, { "cell_type": "code", "execution_count": 19, "id": "b9294929-9096-4e7a-84c6-3ff492e334fe", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: A <-> B\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
search_valueSTART_TIMEDelta ADelta Btime_stepcaption
100.13750.13751.690496-1.6904960.05
\n", "
" ], "text/plain": [ " search_value START_TIME Delta A Delta B time_step caption\n", "10 0.1375 0.1375 1.690496 -1.690496 0.05 " ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "delta_row = dynamics.get_diagnostic_rxn_data(rxn_index=0, t=0.1375) # Locate the row with the interval's start time\n", "delta_row" ] }, { "cell_type": "code", "execution_count": 20, "id": "53e62512-9865-4d65-a547-4e719d54033f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 1.69049576, -1.69049576]])" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "delta_row[[\"Delta A\", \"Delta B\"]].to_numpy() # Gives same value as delta_concentrations, above" ] }, { "cell_type": "code", "execution_count": 21, "id": "5b1a9eed-21e0-4896-ad01-b710fcd7a720", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('high', 0.5, {'norm_A': 1.428887963294983})" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Computes a measure of how large delta_concentrations is, and propose a course of action\n", "dynamics.adjust_speed(delta_concentrations) " ] }, { "cell_type": "markdown", "id": "cc004982-4c9e-43c9-883d-05827e1b02e8", "metadata": {}, "source": [ "#### The above conclusion is that the time step is on the \"high\" side, and should be **HALVED** at the next round : that's because the computed norm is > than the \"high\" value previously given in the argument to _set_thresholds()_ (but doesn't exceed the \"abort\" threshold)" ] }, { "cell_type": "code", "execution_count": 22, "id": "26e37513-4595-4188-bc37-d860fbcbed99", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'norm': 'norm_A', 'low': 0.5, 'high': 0.8, 'abort': 1.44}]" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.thresholds # Consult the previously-set threshold values" ] }, { "cell_type": "markdown", "id": "1dac7bdd-63fe-4a5d-95ad-12ae178610ca", "metadata": { "tags": [] }, "source": [ "### Detailed Example 2: **going from 0.1875 to 0.2125** " ] }, { "cell_type": "code", "execution_count": 23, "id": "546deb76-bd51-41a0-b082-5ef671d565c9", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABcaption
80.187518.92851341.071487
90.212519.56244940.437551
\n", "
" ], "text/plain": [ " SYSTEM TIME A B caption\n", "8 0.1875 18.928513 41.071487 \n", "9 0.2125 19.562449 40.437551 " ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lookup = dynamics.get_history(t_start=0.1875, t_end=0.2125)\n", "lookup" ] }, { "cell_type": "code", "execution_count": 24, "id": "5c78a7c7-573d-4d8a-a737-8a6ba475f17c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 0.6339359, -0.6339359], dtype=float32)" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "delta_concentrations = dynamics.extract_delta_concentrations(lookup, 8, 9, ['A', 'B'])\n", "delta_concentrations" ] }, { "cell_type": "markdown", "id": "fe0d44a2-6aa3-433d-9e4c-94084d43a0cf", "metadata": {}, "source": [ "Note how substantially smaller _delta_concentrations_ is, compared to the previous example" ] }, { "cell_type": "code", "execution_count": 25, "id": "7c80b15c-0567-412f-9a9c-2197c63405a7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('low', 2.0, {'norm_A': 0.20093737542629242})" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.adjust_speed(delta_concentrations)" ] }, { "cell_type": "markdown", "id": "751da240-c410-4bed-8d1f-4847d42aba4a", "metadata": {}, "source": [ "#### The above conclusion is that the time step is on the \"low\" side, and should be **DOUBLED** at the next round : that's because the computed norm is < than the \"low\" value previously given in the argument to _set_thresholds()_" ] }, { "cell_type": "code", "execution_count": 26, "id": "99d99b08-35ae-4875-9a4d-f4cb96e01f16", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'norm': 'norm_A', 'low': 0.5, 'high': 0.8, 'abort': 1.44}]" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.thresholds # Consult the previously-set threshold values" ] }, { "cell_type": "markdown", "id": "6deca814", "metadata": {}, "source": [ "# Check the final equilibrium" ] }, { "cell_type": "code", "execution_count": 27, "id": "23c4b3ba", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "A <-> B\n", "Final concentrations: [B] = 36 ; [A] = 24\n", "1. Ratio of reactant/product concentrations, adjusted for reaction orders: 1.5\n", " Formula used: [B] / [A]\n", "2. Ratio of forward/reverse reaction rates: 1.5\n", "Discrepancy between the two values: 0 %\n", "Reaction IS in equilibrium (within 1% tolerance)\n", "\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Verify that the reaction has reached equilibrium\n", "dynamics.is_in_equilibrium()" ] }, { "cell_type": "markdown", "id": "03866901", "metadata": { "tags": [] }, "source": [ "# Plots of changes of concentration with time" ] }, { "cell_type": "code", "execution_count": 28, "id": "4aa218e3-e8de-4762-9a60-b727a833f2d4", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "A", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0125, 0.037500000000000006, 0.05, 0.07500000000000001, 0.08750000000000001, 0.11250000000000002, 0.1375, 0.1875, 0.2125, 0.2625, 0.3125, 0.4125, 0.5125, 0.7124999999999999, 1.1124999999999998, 1.9124999999999999 ], "xaxis": "x", "y": [ 10, 10.875, 12.515625, 13.2333984375, 14.5792236328125, 15.168022155761719, 16.272019386291504, 17.238016963005066, 18.9285127222538, 19.562448631972075, 20.671836473979056, 21.503877355484292, 22.751938677742146, 23.375969338871073, 24, 24, 24 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "B", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0125, 0.037500000000000006, 0.05, 0.07500000000000001, 0.08750000000000001, 0.11250000000000002, 0.1375, 0.1875, 0.2125, 0.2625, 0.3125, 0.4125, 0.5125, 0.7124999999999999, 1.1124999999999998, 1.9124999999999999 ], "xaxis": "x", "y": [ 50, 49.125, 47.484375, 46.7666015625, 45.4207763671875, 44.83197784423828, 43.727980613708496, 42.761983036994934, 41.0714872777462, 40.437551368027925, 39.328163526020944, 38.49612264451571, 37.248061322257854, 36.62403066112893, 36, 36, 36 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction `A <-> B` . Changes in concentrations with time" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 1.9124999999999999 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 7.777777777777778, 52.22222222222222 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_curves(colors=['blue', 'orange'])" ] }, { "cell_type": "markdown", "id": "306e3db7", "metadata": {}, "source": [ "## Note how the left-hand side of this plot is much smoother than it was in experiment `react_1`, where no adaptive time steps were used!" ] }, { "cell_type": "code", "execution_count": 29, "id": "6b033cc7-078f-4b94-a466-1aa91e2fca4d", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "A", "line": { "color": "blue", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0125, 0.037500000000000006, 0.05, 0.07500000000000001, 0.08750000000000001, 0.11250000000000002, 0.1375, 0.1875, 0.2125, 0.2625, 0.3125, 0.4125, 0.5125, 0.7124999999999999, 1.1124999999999998, 1.9124999999999999 ], "xaxis": "x", "y": [ 10, 10.875, 12.515625, 13.2333984375, 14.5792236328125, 15.168022155761719, 16.272019386291504, 17.238016963005066, 18.9285127222538, 19.562448631972075, 20.671836473979056, 21.503877355484292, 22.751938677742146, 23.375969338871073, 24, 24, 24 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "B", "line": { "color": "orange", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.0125, 0.037500000000000006, 0.05, 0.07500000000000001, 0.08750000000000001, 0.11250000000000002, 0.1375, 0.1875, 0.2125, 0.2625, 0.3125, 0.4125, 0.5125, 0.7124999999999999, 1.1124999999999998, 1.9124999999999999 ], "xaxis": "x", "y": [ 50, 49.125, 47.484375, 46.7666015625, 45.4207763671875, 44.83197784423828, 43.727980613708496, 42.761983036994934, 41.0714872777462, 40.437551368027925, 39.328163526020944, 38.49612264451571, 37.248061322257854, 36.62403066112893, 36, 36, 36 ], "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.0125, "x1": 0.0125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.037500000000000006, "x1": 0.037500000000000006, "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.07500000000000001, "x1": 0.07500000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.08750000000000001, "x1": 0.08750000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.11250000000000002, "x1": 0.11250000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.1375, "x1": 0.1375, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.1875, "x1": 0.1875, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.2125, "x1": 0.2125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.2625, "x1": 0.2625, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.3125, "x1": 0.3125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.4125, "x1": 0.4125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5125, "x1": 0.5125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.7124999999999999, "x1": 0.7124999999999999, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.1124999999999998, "x1": 1.1124999999999998, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.9124999999999999, "x1": 1.9124999999999999, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" } ], "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction `A <-> B` . Changes in concentrations with time (time steps shown in dashed lines)" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.0010916095890410957, 1.913591609589041 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ 7.777777777777778, 52.22222222222222 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_curves(colors=['blue', 'orange'], show_intervals=True)" ] }, { "cell_type": "markdown", "id": "6b96283e-20d8-4256-b857-2e328923e942", "metadata": {}, "source": [ "#### Compare the above with the fixed step sizes (always 0.1) of experiment `react_1`" ] }, { "cell_type": "code", "execution_count": 30, "id": "039e5eab-53bf-4bfb-b68b-e83f399490c5", "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.0125, 0.0125, 0.037500000000000006, 0.037500000000000006, 0.05, 0.05, 0.07500000000000001, 0.07500000000000001, 0.08750000000000001, 0.08750000000000001, 0.1375, 0.1375, 0.1875, 0.1875, 0.2125, 0.2125, 0.3125, 0.3125, 0.5125, 0.5125, 0.7124999999999999, 0.7124999999999999, 1.1124999999999998, 1.1124999999999998, 1.9124999999999999 ], "xaxis": "x", "y": [ 0.0125, 0.0125, 0.025000000000000005, 0.025000000000000005, 0.012499999999999997, 0.012499999999999997, 0.02500000000000001, 0.02500000000000001, 0.012499999999999997, 0.012499999999999997, 0.024999999999999994, 0.024999999999999994, 0.04999999999999999, 0.04999999999999999, 0.024999999999999994, 0.024999999999999994, 0.04999999999999999, 0.04999999999999999, 0.09999999999999998, 0.09999999999999998, 0.19999999999999996, 0.19999999999999996, 0.3999999999999999, 0.3999999999999999, 0.8, 0.8 ], "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.0125, "x1": 0.0125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.037500000000000006, "x1": 0.037500000000000006, "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.07500000000000001, "x1": 0.07500000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.08750000000000001, "x1": 0.08750000000000001, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.11250000000000002, "x1": 0.11250000000000002, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.1375, "x1": 0.1375, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.1875, "x1": 0.1875, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.2125, "x1": 0.2125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.2625, "x1": 0.2625, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.3125, "x1": 0.3125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.4125, "x1": 0.4125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.5125, "x1": 0.5125, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 0.7124999999999999, "x1": 0.7124999999999999, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.1124999999999998, "x1": 1.1124999999999998, "xref": "x", "y0": 0, "y1": 1, "yref": "y domain" }, { "line": { "color": "gray", "dash": "dot", "width": 1 }, "type": "line", "x0": 1.9124999999999999, "x1": 1.9124999999999999, "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.0010696308724832213, 1.913569630872483 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -0.03125000000000001, 0.84375 ], "title": { "text": "Step size" }, "type": "linear" } } }, "image/png": "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", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dynamics.plot_step_sizes(show_intervals=True)" ] }, { "cell_type": "markdown", "id": "317b8747", "metadata": {}, "source": [ "# Diagnostics of the run may be investigated as follows: \n", "_(note - this is possible because we make a call to set_diagnostics() prior to running the simulation)_" ] }, { "cell_type": "code", "execution_count": 31, "id": "04c04327", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
TIMEABcaption
00.000010.00000050.000000
10.012510.87500049.125000
20.037512.51562547.484375
30.050013.23339846.766602
40.075014.57922445.420776
50.087515.16802244.831978
60.112516.27201943.727981
70.137517.23801742.761983
80.187518.92851341.071487
90.212519.56244940.437551
100.262520.67183639.328164
110.312521.50387738.496123
120.412522.75193937.248061
130.512523.37596936.624031
140.712524.00000036.000000
151.112524.00000036.000000
161.912524.00000036.000000
\n", "
" ], "text/plain": [ " TIME A B caption\n", "0 0.0000 10.000000 50.000000 \n", "1 0.0125 10.875000 49.125000 \n", "2 0.0375 12.515625 47.484375 \n", "3 0.0500 13.233398 46.766602 \n", "4 0.0750 14.579224 45.420776 \n", "5 0.0875 15.168022 44.831978 \n", "6 0.1125 16.272019 43.727981 \n", "7 0.1375 17.238017 42.761983 \n", "8 0.1875 18.928513 41.071487 \n", "9 0.2125 19.562449 40.437551 \n", "10 0.2625 20.671836 39.328164 \n", "11 0.3125 21.503877 38.496123 \n", "12 0.4125 22.751939 37.248061 \n", "13 0.5125 23.375969 36.624031 \n", "14 0.7125 24.000000 36.000000 \n", "15 1.1125 24.000000 36.000000 \n", "16 1.9125 24.000000 36.000000 " ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_conc_data() # This will be complete, even if we only saved part of the history during the run" ] }, { "cell_type": "code", "execution_count": 32, "id": "2144da8f-498a-4954-8a51-a0e606055979", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Reaction: A <-> B\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
START_TIMEDelta ADelta Btime_stepcaption
00.00007.000000-7.0000000.1000aborted: excessive norm value(s)
10.00003.500000-3.5000000.0500aborted: excessive norm value(s)
20.00001.750000-1.7500000.0250aborted: excessive norm value(s)
30.00000.875000-0.8750000.0125
40.01251.640625-1.6406250.0250
50.03750.717773-0.7177730.0125
60.05001.345825-1.3458250.0250
70.07500.588799-0.5887990.0125
80.08751.103997-1.1039970.0250
90.11250.965998-0.9659980.0250
100.13751.690496-1.6904960.0500
110.18750.633936-0.6339360.0250
120.21251.109388-1.1093880.0500
130.26250.832041-0.8320410.0500
140.31251.248061-1.2480610.1000
150.41250.624031-0.6240310.1000
160.51250.624031-0.6240310.2000
170.71250.0000000.0000000.4000
181.11250.0000000.0000000.8000
\n", "
" ], "text/plain": [ " START_TIME Delta A Delta B time_step \\\n", "0 0.0000 7.000000 -7.000000 0.1000 \n", "1 0.0000 3.500000 -3.500000 0.0500 \n", "2 0.0000 1.750000 -1.750000 0.0250 \n", "3 0.0000 0.875000 -0.875000 0.0125 \n", "4 0.0125 1.640625 -1.640625 0.0250 \n", "5 0.0375 0.717773 -0.717773 0.0125 \n", "6 0.0500 1.345825 -1.345825 0.0250 \n", "7 0.0750 0.588799 -0.588799 0.0125 \n", "8 0.0875 1.103997 -1.103997 0.0250 \n", "9 0.1125 0.965998 -0.965998 0.0250 \n", "10 0.1375 1.690496 -1.690496 0.0500 \n", "11 0.1875 0.633936 -0.633936 0.0250 \n", "12 0.2125 1.109388 -1.109388 0.0500 \n", "13 0.2625 0.832041 -0.832041 0.0500 \n", "14 0.3125 1.248061 -1.248061 0.1000 \n", "15 0.4125 0.624031 -0.624031 0.1000 \n", "16 0.5125 0.624031 -0.624031 0.2000 \n", "17 0.7125 0.000000 0.000000 0.4000 \n", "18 1.1125 0.000000 0.000000 0.8000 \n", "\n", " caption \n", "0 aborted: excessive norm value(s) \n", "1 aborted: excessive norm value(s) \n", "2 aborted: excessive norm value(s) \n", "3 \n", "4 \n", "5 \n", "6 \n", "7 \n", "8 \n", "9 \n", "10 \n", "11 \n", "12 \n", "13 \n", "14 \n", "15 \n", "16 \n", "17 \n", "18 " ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_rxn_data(rxn_index=0) # For the 0-th reaction (the only reaction in our case)" ] }, { "cell_type": "markdown", "id": "3712a55c-f0a7-4084-81ba-04cff117799b", "metadata": {}, "source": [ "### Note that diagnostic data with the DELTA Concentrations - above and below - also record the values that were considered (but not actually used) during ABORTED steps" ] }, { "cell_type": "code", "execution_count": 33, "id": "98515b8d", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
START_TIMEDelta ADelta Bnorm_Anorm_Bactionstep_factortime_stepcaption
00.00007.000000-7.00000024.500000NoneABORT0.50.1000excessive norm value(s)
10.00003.500000-3.5000006.125000NoneABORT0.50.0500excessive norm value(s)
20.00001.750000-1.7500001.531250NoneABORT0.50.0250excessive norm value(s)
30.00000.875000-0.8750000.382812NoneOK (low)2.00.0125
40.01251.640625-1.6406251.345825NoneOK (high)0.50.0250
50.03750.717773-0.7177730.257599NoneOK (low)2.00.0125
60.05001.345825-1.3458250.905623NoneOK (high)0.50.0250
70.07500.588799-0.5887990.173342NoneOK (low)2.00.0125
80.08751.103997-1.1039970.609405NoneOK (stay)1.00.0250
90.11250.965998-0.9659980.466576NoneOK (low)2.00.0250
100.13751.690496-1.6904961.428888NoneOK (high)0.50.0500
110.18750.633936-0.6339360.200937NoneOK (low)2.00.0250
120.21251.109388-1.1093880.615371NoneOK (stay)1.00.0500
130.26250.832041-0.8320410.346146NoneOK (low)2.00.0500
140.31251.248061-1.2480610.778829NoneOK (stay)1.00.1000
150.41250.624031-0.6240310.194707NoneOK (low)2.00.1000
160.51250.624031-0.6240310.194707NoneOK (low)2.00.2000
170.71250.0000000.0000000.000000NoneOK (low)2.00.4000
181.11250.0000000.0000000.000000NoneOK (low)2.00.8000
\n", "
" ], "text/plain": [ " START_TIME Delta A Delta B norm_A norm_B action step_factor \\\n", "0 0.0000 7.000000 -7.000000 24.500000 None ABORT 0.5 \n", "1 0.0000 3.500000 -3.500000 6.125000 None ABORT 0.5 \n", "2 0.0000 1.750000 -1.750000 1.531250 None ABORT 0.5 \n", "3 0.0000 0.875000 -0.875000 0.382812 None OK (low) 2.0 \n", "4 0.0125 1.640625 -1.640625 1.345825 None OK (high) 0.5 \n", "5 0.0375 0.717773 -0.717773 0.257599 None OK (low) 2.0 \n", "6 0.0500 1.345825 -1.345825 0.905623 None OK (high) 0.5 \n", "7 0.0750 0.588799 -0.588799 0.173342 None OK (low) 2.0 \n", "8 0.0875 1.103997 -1.103997 0.609405 None OK (stay) 1.0 \n", "9 0.1125 0.965998 -0.965998 0.466576 None OK (low) 2.0 \n", "10 0.1375 1.690496 -1.690496 1.428888 None OK (high) 0.5 \n", "11 0.1875 0.633936 -0.633936 0.200937 None OK (low) 2.0 \n", "12 0.2125 1.109388 -1.109388 0.615371 None OK (stay) 1.0 \n", "13 0.2625 0.832041 -0.832041 0.346146 None OK (low) 2.0 \n", "14 0.3125 1.248061 -1.248061 0.778829 None OK (stay) 1.0 \n", "15 0.4125 0.624031 -0.624031 0.194707 None OK (low) 2.0 \n", "16 0.5125 0.624031 -0.624031 0.194707 None OK (low) 2.0 \n", "17 0.7125 0.000000 0.000000 0.000000 None OK (low) 2.0 \n", "18 1.1125 0.000000 0.000000 0.000000 None OK (low) 2.0 \n", "\n", " time_step caption \n", "0 0.1000 excessive norm value(s) \n", "1 0.0500 excessive norm value(s) \n", "2 0.0250 excessive norm value(s) \n", "3 0.0125 \n", "4 0.0250 \n", "5 0.0125 \n", "6 0.0250 \n", "7 0.0125 \n", "8 0.0250 \n", "9 0.0250 \n", "10 0.0500 \n", "11 0.0250 \n", "12 0.0500 \n", "13 0.0500 \n", "14 0.1000 \n", "15 0.1000 \n", "16 0.2000 \n", "17 0.4000 \n", "18 0.8000 " ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dynamics.get_diagnostic_decisions_data()" ] }, { "cell_type": "code", "execution_count": null, "id": "3792d78d-7429-4221-a263-57b07d77b5bc", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }