{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Guard Cell Abscinic Acid" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

BooLEVARD Tutorials

\n", "
\n", " [Tutorial 2] Guard Cell Abscinic Acid\n", "
\n", "

\n", "\n", "In this tutorial, we will use a Boolean model representing the signaling events taking place upon **ABA-induced stomatal closure** in plant guard cells. Stomata are microscopic pores on the leaf surface thatregulate gas exchange, and their aperture is tightly controlled by a pair of guard cells. In response to drought, the hormone abscisic acid (ABA) promotes stomatal closure to minimize water loss. This complex physiological response involves a broad aarray of molecular components, including ion channels, secondary messengers, and cytoskeletal regulators. The model integrates more than 40 experimetally characterized components into a unified **signal transduction network** that captures the main regulatory interactions driving guard cell shrinkage and stomatal closure. It successfully reproduces known physiological and pathway-level respones to ABA.\n", "\n", "

\n", "

\n", "Li S, Assmann SM, Albert R (2006). \n", "Predicting Essential Components of Signal Transduction Networks: A Dynamic Model of Guard Cell Abscisic Acid Signaling. \n", "PLOS Biology 4(10): e312. \n", "https://doi.org/10.1371/journal.pbio.0040312\n", "

\n" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [], "source": [ "import biolqm\n", "import tempfile\n", "import re\n", "import boolevard as blv\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import xml.etree.ElementTree as ET\n", "from PyComplexHeatmap import * \n", "from libsbml import *\n", "from matplotlib.colors import ListedColormap, LinearSegmentedColormap\n", "from scipy.cluster.hierarchy import linkage, leaves_list" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The **Guard Cell Abscisic Acid Signaling** Boolean Model is stored in [Cell Collective](https://research.cellcollective.org/dashboard#module/2161:1/guard-cell-abscisic-acid-signaling/1). Boolean models can be downloaded in SBML format from Cell Collective, but BooLEVARD uses Boolean models in BoolNet format as input. Accordingly, we must define a small function to convert SBML to BoolNet models:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Convert SBML-qual model to bnet format\n", "def sbml2bnet(sbml_file, bnet_file):\n", " reader = SBMLReader()\n", " document = reader.readSBMLFromFile(sbml_file)\n", " model = document.getModel()\n", " qual = model.getPlugin(\"qual\")\n", " id2name = {}\n", " for i in range(qual.getNumQualitativeSpecies()):\n", " qs = qual.getQualitativeSpecies(i)\n", " id2name[qs.getId()] = qs.getName() if qs.isSetName() else qs.getId()\n", " equations = {}\n", " new_lines = []\n", " for transition in qual.getListOfTransitions():\n", " outputs = transition.getListOfOutputs()\n", " target_id = outputs[0].getQualitativeSpecies()\n", " target_name = id2name.get(target_id, target_id)\n", " function_terms = transition.getListOfFunctionTerms()\n", " formula = formulaToL3String(function_terms[0].getMath())\n", " normal_formula = re.sub(r'\\|\\|', '|', formula) # convert || to |\n", " normal_formula = re.sub(r'&&', '&', normal_formula) # convert && to &\n", " normal_formula = re.sub(r'\\b(\\w+)\\s*==\\s*1\\b', r'\\1', normal_formula) # convert == 1 to \n", " normal_formula = re.sub(r'\\b(\\w+)\\s*==\\s*0\\b', r'~\\1', normal_formula)\n", " normal_formula = normal_formula.replace('!', '~')\n", " for node_id, node_name in id2name.items():\n", " normal_formula = re.sub(rf'\\b{re.escape(node_id)}\\b', node_name, normal_formula)\n", " equations[target_name] = normal_formula\n", " for var, formula in equations.items():\n", " new_lines.append(f\"{var}, {formula}\\n\")\n", " inputs = [node for node in list(id2name.values()) if node not in list(equations.keys())]\n", " for input in inputs:\n", " new_lines.append(f\"{input}, {input}\\n\") \n", " with open(bnet_file, \"w\") as out:\n", " out.writelines(new_lines)\n", " print(f\"✅ SBML-qual model successfully converted to bnet: {bnet_file}\") " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now, we can generate the BoolNet version of the model:" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "✅ SBML-qual model successfully converted to bnet: resources/Guard Cell Abscisic Acid Signaling.bnet\n" ] } ], "source": [ "# The SBML model is stored in:\n", "model_sbml_path = \"resources/Guard Cell Abscisic Acid Signaling (SBML).sbml\"\n", "# We will save the BoolNet model in:\n", "model_bnet_path = \"resources/Guard Cell Abscisic Acid Signaling.bnet\"\n", "\n", "# Convert SBML to BoolNet format\n", "sbml2bnet(model_sbml_path, model_bnet_path)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's now load it with BooLEVARD, and retrieve some basic information:" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of nodes: 44\n", "Number of inputs: 4, (ABA, ABH1, GCR1, ERA1)\n", "Number of stable states: 16\n" ] } ], "source": [ "# Load te BoolNet model with BooLEVARD\n", "model = blv.Load(model_bnet_path)\n", "print(f\"Number of nodes: {len(model.Nodes)}\")\n", "print(f\"Number of inputs: {len(model.Info.index[model.Info.index == model.Info['DNF'].apply(str)])}, ({', '.join(list((model.Info.index[model.Info.index == model.Info['DNF'].apply(str)])))})\")\n", "print(f\"Number of stable states: {len(model.Info.columns)-2}\")" ] }, { "cell_type": "code", "execution_count": 86, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
1191087654102313151214DNFNDNF
cGMP0000000000000000GC~GC
RCN11111111111111111ABA~ABA
AGB10000000011111111GPA1~GPA1
Actin1111111111111111Or(Ca2_c, And(~Ca2_c, ~RAC1))And(~Ca2_c, RAC1)
cADPR0000000000000000ADPRc~ADPRc
Depolar1111111111111111Or(AnionEM, Ca2_c, KEV, And(~AnionEM, ~Ca2_c, ...And(~AnionEM, ~Ca2_c, HTPase, ~KEV, KOUT)
KEV0000000000000000Ca2_c~Ca2_c
KAP1111111111111111Or(And(~Ca2_c, Depolar), And(Depolar, ~pH))Or(~Depolar, And(Ca2_c, pH))
Closure0000000011111111Or(And(Actin, AnionEM, KAP, ~Malate), And(Acti...Or(~Actin, ~AnionEM, Malate, And(~KAP, ~KOUT))
NIA121111111111111111RCN1~RCN1
CaIM0000000000000000Or(And(~ABH1, ~Depolar, ERA1), And(ABH1, ~Depo...Or(Depolar, And(ABH1, ERA1, ~ROS))
PLD0000000011111111GPA1~GPA1
AnionEM0000000011111111Or(And(~ABI1, Ca2_c), And(~ABI1, pH), And(Ca2_...Or(And(ABI1, ~Ca2_c), And(ABI1, ~pH), And(~Ca2...
ROP100000111100001111ERA1~ERA1
NO0000000000000000And(NIA12, NOS)Or(~NIA12, ~NOS)
S1P1111111111111111SphK~SphK
GPA10000000011111111Or(And(AGB1, ~GCR1), And(AGB1, S1P))Or(~AGB1, And(GCR1, ~S1P))
ROP20000000011111111PA~PA
InsP30000000000000000PLC~PLC
SphK1111111111111111ABA~ABA
NOS0000000000000000Ca2_c~Ca2_c
Atrboh0000000011111111And(~ABI1, OST1, ROP2, pH)Or(ABI1, ~OST1, ~ROP2, ~pH)
Ca2_ATPase0000000000000000Ca2_c~Ca2_c
OST11111111111111111ABA~ABA
Malate0000000000000000And(~ABA, ~AnionEM, PEPC)Or(ABA, AnionEM, ~PEPC)
RAC10000000000000000And(~ABA, ~ABI1)Or(ABA, ABI1)
InsP61111111111111111InsPK~InsPK
ADPRc0000000000000000NO~NO
ABI11111111100000000And(~PA, ~ROS, pH)Or(PA, ROS, ~pH)
ROS0000000011111111Atrboh~Atrboh
Ca2_c0000000000000000Or(And(CIS, ~Ca2_ATPase), And(~Ca2_ATPase, CaIM))Or(Ca2_ATPase, And(~CIS, ~CaIM))
InsPK1111111111111111ABA~ABA
PA0000000011111111PLD~PLD
GC0000000000000000NO~NO
KOUT1111111111111111Or(And(Depolar, ~NO), And(Depolar, ~ROS), And(...Or(~Depolar, And(NO, ROS, ~pH))
PEPC0000000000000000~ABAABA
HTPase0000000000000000And(~Ca2_c, ~ROS, ~pH)Or(Ca2_c, ROS, pH)
PLC0000000000000000And(ABA, Ca2_c)Or(~ABA, ~Ca2_c)
pH1111111111111111ABA~ABA
CIS0000000000000000Or(And(InsP3, InsP6), And(cADPR, cGMP))Or(And(~InsP3, ~cADPR), And(~InsP3, ~cGMP), An...
ABA1111111111111111ABA~ABA
ABH10011001100110011ABH1~ABH1
GCR10101010101010101GCR1~GCR1
ERA10000111100001111ERA1~ERA1
\n", "
" ], "text/plain": [ " 11 9 10 8 7 6 5 4 1 0 2 3 13 15 12 14 \\\n", "cGMP 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "RCN1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "AGB1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "Actin 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "cADPR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "Depolar 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "KEV 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "KAP 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "Closure 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "NIA12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "CaIM 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "PLD 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "AnionEM 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "ROP10 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 \n", "NO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "S1P 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "GPA1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "ROP2 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "InsP3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "SphK 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "NOS 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "Atrboh 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "Ca2_ATPase 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "OST1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "Malate 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "RAC1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "InsP6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "ADPRc 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "ABI1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 \n", "ROS 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "Ca2_c 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "InsPK 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "PA 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 \n", "GC 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "KOUT 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "PEPC 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "HTPase 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "PLC 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "pH 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "CIS 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \n", "ABA 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 \n", "ABH1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 \n", "GCR1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 \n", "ERA1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 \n", "\n", " DNF \\\n", "cGMP GC \n", "RCN1 ABA \n", "AGB1 GPA1 \n", "Actin Or(Ca2_c, And(~Ca2_c, ~RAC1)) \n", "cADPR ADPRc \n", "Depolar Or(AnionEM, Ca2_c, KEV, And(~AnionEM, ~Ca2_c, ... \n", "KEV Ca2_c \n", "KAP Or(And(~Ca2_c, Depolar), And(Depolar, ~pH)) \n", "Closure Or(And(Actin, AnionEM, KAP, ~Malate), And(Acti... \n", "NIA12 RCN1 \n", "CaIM Or(And(~ABH1, ~Depolar, ERA1), And(ABH1, ~Depo... \n", "PLD GPA1 \n", "AnionEM Or(And(~ABI1, Ca2_c), And(~ABI1, pH), And(Ca2_... \n", "ROP10 ERA1 \n", "NO And(NIA12, NOS) \n", "S1P SphK \n", "GPA1 Or(And(AGB1, ~GCR1), And(AGB1, S1P)) \n", "ROP2 PA \n", "InsP3 PLC \n", "SphK ABA \n", "NOS Ca2_c \n", "Atrboh And(~ABI1, OST1, ROP2, pH) \n", "Ca2_ATPase Ca2_c \n", "OST1 ABA \n", "Malate And(~ABA, ~AnionEM, PEPC) \n", "RAC1 And(~ABA, ~ABI1) \n", "InsP6 InsPK \n", "ADPRc NO \n", "ABI1 And(~PA, ~ROS, pH) \n", "ROS Atrboh \n", "Ca2_c Or(And(CIS, ~Ca2_ATPase), And(~Ca2_ATPase, CaIM)) \n", "InsPK ABA \n", "PA PLD \n", "GC NO \n", "KOUT Or(And(Depolar, ~NO), And(Depolar, ~ROS), And(... \n", "PEPC ~ABA \n", "HTPase And(~Ca2_c, ~ROS, ~pH) \n", "PLC And(ABA, Ca2_c) \n", "pH ABA \n", "CIS Or(And(InsP3, InsP6), And(cADPR, cGMP)) \n", "ABA ABA \n", "ABH1 ABH1 \n", "GCR1 GCR1 \n", "ERA1 ERA1 \n", "\n", " NDNF \n", "cGMP ~GC \n", "RCN1 ~ABA \n", "AGB1 ~GPA1 \n", "Actin And(~Ca2_c, RAC1) \n", "cADPR ~ADPRc \n", "Depolar And(~AnionEM, ~Ca2_c, HTPase, ~KEV, KOUT) \n", "KEV ~Ca2_c \n", "KAP Or(~Depolar, And(Ca2_c, pH)) \n", "Closure Or(~Actin, ~AnionEM, Malate, And(~KAP, ~KOUT)) \n", "NIA12 ~RCN1 \n", "CaIM Or(Depolar, And(ABH1, ERA1, ~ROS)) \n", "PLD ~GPA1 \n", "AnionEM Or(And(ABI1, ~Ca2_c), And(ABI1, ~pH), And(~Ca2... \n", "ROP10 ~ERA1 \n", "NO Or(~NIA12, ~NOS) \n", "S1P ~SphK \n", "GPA1 Or(~AGB1, And(GCR1, ~S1P)) \n", "ROP2 ~PA \n", "InsP3 ~PLC \n", "SphK ~ABA \n", "NOS ~Ca2_c \n", "Atrboh Or(ABI1, ~OST1, ~ROP2, ~pH) \n", "Ca2_ATPase ~Ca2_c \n", "OST1 ~ABA \n", "Malate Or(ABA, AnionEM, ~PEPC) \n", "RAC1 Or(ABA, ABI1) \n", "InsP6 ~InsPK \n", "ADPRc ~NO \n", "ABI1 Or(PA, ROS, ~pH) \n", "ROS ~Atrboh \n", "Ca2_c Or(Ca2_ATPase, And(~CIS, ~CaIM)) \n", "InsPK ~ABA \n", "PA ~PLD \n", "GC ~NO \n", "KOUT Or(~Depolar, And(NO, ROS, ~pH)) \n", "PEPC ABA \n", "HTPase Or(Ca2_c, ROS, pH) \n", "PLC Or(~ABA, ~Ca2_c) \n", "pH ~ABA \n", "CIS Or(And(~InsP3, ~cADPR), And(~InsP3, ~cGMP), An... \n", "ABA ~ABA \n", "ABH1 ~ABH1 \n", "GCR1 ~GCR1 \n", "ERA1 ~ERA1 " ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model.Info" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We observe that the model has 44 nodes, four of them being inputs (*ABA*, *ABH1*, *GCR1*, *ERA1*) and it reaches 16 stable states. Let's use BooLEVARD to count the paths toward every node across the 16 stable states. " ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Evaluating Stable State: 11\n", "cGMP: -4, 2.5828679402669272e-06 minutes.\n", "RCN1: 1, 2.0265579223632812e-07 minutes.\n", "AGB1: 0, 2.7815500895182292e-08 minutes.\n", "Actin: 6, 1.6689300537109375e-06 minutes.\n", "cADPR: -4, 5.920728047688802e-07 minutes.\n", "Depolar: 4, 4.212061564127604e-07 minutes.\n", "KEV: -4, 5.364418029785156e-07 minutes.\n", "KAP: 8, 8.861223856608073e-07 minutes.\n", "Closure: -4, 4.967053731282552e-07 minutes.\n", "NIA12: 1, 1.8676122029622396e-07 minutes.\n", "CaIM: -4, 5.364418029785156e-07 minutes.\n", "PLD: 0, 1.986821492513021e-07 minutes.\n", "AnionEM: -4, 3.0597050984700523e-07 minutes.\n", "ROP10: -1, 3.417332967122396e-07 minutes.\n", "NO: -4, 4.490216573079427e-07 minutes.\n", "S1P: 1, 1.7881393432617188e-07 minutes.\n", "GPA1: 0, 3.178914388020833e-08 minutes.\n", "ROP2: 0, 1.8278757731119793e-07 minutes.\n", "InsP3: -4, 4.3710072835286457e-07 minutes.\n", "SphK: 1, 1.708666483561198e-07 minutes.\n", "NOS: -4, 4.172325134277344e-07 minutes.\n", "Atrboh: -1, 9.139378865559896e-08 minutes.\n", "Ca2_ATPase: -4, 4.212061564127604e-07 minutes.\n", "OST1: 1, 1.7881393432617188e-07 minutes.\n", "Malate: -2, 3.258387247721354e-07 minutes.\n", "RAC1: -2, 1.2715657552083333e-07 minutes.\n", "InsP6: 1, 1.8278757731119793e-07 minutes.\n", "ADPRc: -4, 4.3312708536783854e-07 minutes.\n", "ABI1: 1, 9.934107462565105e-08 minutes.\n", "ROS: -1, 2.4239222208658853e-07 minutes.\n", "Ca2_c: -4, 2.7418136596679685e-07 minutes.\n", "InsPK: 1, 1.629193623860677e-07 minutes.\n", "PA: 0, 1.6689300537109374e-07 minutes.\n", "GC: -4, 7.152557373046875e-07 minutes.\n", "KOUT: 10, 9.099642435709636e-07 minutes.\n", "PEPC: -1, 2.980232238769531e-07 minutes.\n", "HTPase: -1, 1.9073486328125e-07 minutes.\n", "PLC: -4, 6.834665934244792e-07 minutes.\n", "pH: 1, 2.8212865193684896e-07 minutes.\n", "CIS: -16, 8.980433146158854e-07 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 1.7484029134114582e-07 minutes.\n", "GCR1: 0, 1.2715657552083333e-07 minutes.\n", "ERA1: 0, 1.1920928955078126e-08 minutes.\n", "Evaluating Stable State: 9\n", "cGMP: -4, 4.2279561360677086e-06 minutes.\n", "RCN1: 1, 2.86102294921875e-07 minutes.\n", "AGB1: 0, 3.9736429850260414e-08 minutes.\n", "Actin: 6, 1.0609626770019532e-06 minutes.\n", "cADPR: -4, 5.76178232828776e-07 minutes.\n", "Depolar: 4, 4.6491622924804686e-07 minutes.\n", "KEV: -4, 5.841255187988282e-07 minutes.\n", "KAP: 8, 1.0371208190917968e-06 minutes.\n", "Closure: -4, 5.841255187988282e-07 minutes.\n", "NIA12: 1, 2.2252400716145834e-07 minutes.\n", "CaIM: -4, 6.477038065592448e-07 minutes.\n", "PLD: 0, 2.4239222208658853e-07 minutes.\n", "AnionEM: -4, 3.7749608357747394e-07 minutes.\n", "ROP10: -1, 4.0531158447265624e-07 minutes.\n", "NO: -4, 6.039937337239583e-07 minutes.\n", "S1P: 1, 2.3444493611653645e-07 minutes.\n", "GPA1: 0, 3.9736429850260414e-08 minutes.\n", "ROP2: 0, 2.3444493611653645e-07 minutes.\n", "InsP3: -4, 5.76178232828776e-07 minutes.\n", "SphK: 1, 2.2649765014648436e-07 minutes.\n", "NOS: -4, 5.642573038736979e-07 minutes.\n", "Atrboh: -1, 1.3113021850585939e-07 minutes.\n", "Ca2_ATPase: -4, 5.841255187988282e-07 minutes.\n", "OST1: 1, 2.1457672119140626e-07 minutes.\n", "Malate: -2, 2.702077229817708e-07 minutes.\n", "RAC1: -2, 1.6689300537109374e-07 minutes.\n", "InsP6: 1, 2.1457672119140626e-07 minutes.\n", "ADPRc: -4, 5.7220458984375e-07 minutes.\n", "ABI1: 1, 1.3113021850585939e-07 minutes.\n", "ROS: -1, 3.536542256673177e-07 minutes.\n", "Ca2_c: -4, 3.814697265625e-07 minutes.\n", "InsPK: 1, 2.4239222208658853e-07 minutes.\n", "PA: 0, 2.384185791015625e-07 minutes.\n", "GC: -4, 5.80151875813802e-07 minutes.\n", "KOUT: 10, 1.1642773946126303e-06 minutes.\n", "PEPC: -1, 2.702077229817708e-07 minutes.\n", "HTPase: -1, 2.2649765014648436e-07 minutes.\n", "PLC: -4, 5.841255187988282e-07 minutes.\n", "pH: 1, 2.1855036417643228e-07 minutes.\n", "CIS: -16, 1.3113021850585938e-06 minutes.\n", "ABA: 0, 1.9868214925130207e-08 minutes.\n", "ABH1: 0, 2.662340799967448e-07 minutes.\n", "GCR1: 0, 2.0265579223632812e-07 minutes.\n", "ERA1: 0, 1.5894571940104166e-08 minutes.\n", "Evaluating Stable State: 10\n", "cGMP: -4, 2.5828679402669272e-06 minutes.\n", "RCN1: 1, 2.0662943522135417e-07 minutes.\n", "AGB1: 0, 3.178914388020833e-08 minutes.\n", "Actin: 6, 6.953875223795573e-07 minutes.\n", "cADPR: -4, 4.0928522745768227e-07 minutes.\n", "Depolar: 4, 3.4968058268229164e-07 minutes.\n", "KEV: -4, 4.172325134277344e-07 minutes.\n", "KAP: 8, 7.271766662597656e-07 minutes.\n", "Closure: -4, 3.973642985026042e-07 minutes.\n", "NIA12: 1, 1.629193623860677e-07 minutes.\n", "CaIM: -4, 4.887580871582031e-07 minutes.\n", "PLD: 0, 1.6689300537109374e-07 minutes.\n", "AnionEM: -4, 2.662340799967448e-07 minutes.\n", "ROP10: -1, 2.662340799967448e-07 minutes.\n", "NO: -4, 3.894170125325521e-07 minutes.\n", "S1P: 1, 1.5497207641601563e-07 minutes.\n", "GPA1: 0, 2.7815500895182292e-08 minutes.\n", "ROP2: 0, 1.5894571940104166e-07 minutes.\n", "InsP3: -4, 3.814697265625e-07 minutes.\n", "SphK: 1, 1.5099843343098958e-07 minutes.\n", "NOS: -4, 3.6557515462239586e-07 minutes.\n", "Atrboh: -1, 7.947285970052083e-08 minutes.\n", "Ca2_ATPase: -4, 3.8544336954752605e-07 minutes.\n", "OST1: 1, 1.430511474609375e-07 minutes.\n", "Malate: -2, 1.7881393432617188e-07 minutes.\n", "RAC1: -2, 1.1920928955078125e-07 minutes.\n", "InsP6: 1, 1.4702479044596355e-07 minutes.\n", "ADPRc: -4, 4.0531158447265624e-07 minutes.\n", "ABI1: 1, 8.742014567057291e-08 minutes.\n", "ROS: -1, 2.2649765014648436e-07 minutes.\n", "Ca2_c: -4, 2.582867940266927e-07 minutes.\n", "InsPK: 1, 1.5099843343098958e-07 minutes.\n", "PA: 0, 1.629193623860677e-07 minutes.\n", "GC: -4, 3.7749608357747394e-07 minutes.\n", "KOUT: 10, 7.430712381998698e-07 minutes.\n", "PEPC: -1, 1.5497207641601563e-07 minutes.\n", "HTPase: -1, 1.4702479044596355e-07 minutes.\n", "PLC: -4, 3.814697265625e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -16, 8.62280527750651e-07 minutes.\n", "ABA: 0, 7.947285970052083e-09 minutes.\n", "ABH1: 0, 1.629193623860677e-07 minutes.\n", "GCR1: 0, 1.351038614908854e-07 minutes.\n", "ERA1: 0, 1.1920928955078126e-08 minutes.\n", "Evaluating Stable State: 8\n", "cGMP: -4, 2.475579579671224e-06 minutes.\n", "RCN1: 1, 1.9470850626627604e-07 minutes.\n", "AGB1: 0, 3.5762786865234374e-08 minutes.\n", "Actin: 6, 7.351239522298177e-07 minutes.\n", "cADPR: -4, 4.172325134277344e-07 minutes.\n", "Depolar: 4, 3.536542256673177e-07 minutes.\n", "KEV: -4, 3.973642985026042e-07 minutes.\n", "KAP: 8, 7.073084513346354e-07 minutes.\n", "Closure: -4, 4.013379414876302e-07 minutes.\n", "NIA12: 1, 1.629193623860677e-07 minutes.\n", "CaIM: -4, 4.450480143229167e-07 minutes.\n", "PLD: 0, 1.629193623860677e-07 minutes.\n", "AnionEM: -4, 2.7418136596679685e-07 minutes.\n", "ROP10: -1, 2.7418136596679685e-07 minutes.\n", "NO: -4, 3.973642985026042e-07 minutes.\n", "S1P: 1, 2.3047129313151042e-07 minutes.\n", "GPA1: 0, 2.7815500895182292e-08 minutes.\n", "ROP2: 0, 2.662340799967448e-07 minutes.\n", "InsP3: -4, 3.8544336954752605e-07 minutes.\n", "SphK: 1, 1.3907750447591147e-07 minutes.\n", "NOS: -4, 3.735224405924479e-07 minutes.\n", "Atrboh: -1, 8.742014567057291e-08 minutes.\n", "Ca2_ATPase: -4, 3.735224405924479e-07 minutes.\n", "OST1: 1, 1.5099843343098958e-07 minutes.\n", "Malate: -2, 1.7881393432617188e-07 minutes.\n", "RAC1: -2, 1.7881393432617188e-07 minutes.\n", "InsP6: 1, 2.5431315104166666e-07 minutes.\n", "ADPRc: -4, 3.735224405924479e-07 minutes.\n", "ABI1: 1, 8.742014567057291e-08 minutes.\n", "ROS: -1, 2.1855036417643228e-07 minutes.\n", "Ca2_c: -4, 2.463658650716146e-07 minutes.\n", "InsPK: 1, 1.4702479044596355e-07 minutes.\n", "PA: 0, 1.5099843343098958e-07 minutes.\n", "GC: -4, 3.616015116373698e-07 minutes.\n", "KOUT: 10, 7.669130961100261e-07 minutes.\n", "PEPC: -1, 1.5894571940104166e-07 minutes.\n", "HTPase: -1, 1.430511474609375e-07 minutes.\n", "PLC: -4, 3.7749608357747394e-07 minutes.\n", "pH: 1, 1.4702479044596355e-07 minutes.\n", "CIS: -16, 8.463859558105468e-07 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 1.629193623860677e-07 minutes.\n", "GCR1: 0, 1.1920928955078125e-07 minutes.\n", "ERA1: 0, 2.7815500895182292e-08 minutes.\n", "Evaluating Stable State: 7\n", "cGMP: -4, 2.65041987101237e-06 minutes.\n", "RCN1: 1, 1.9470850626627604e-07 minutes.\n", "AGB1: 0, 2.7815500895182292e-08 minutes.\n", "Actin: 6, 7.192293802897135e-07 minutes.\n", "cADPR: -4, 3.894170125325521e-07 minutes.\n", "Depolar: 4, 3.3775965372721356e-07 minutes.\n", "KEV: -4, 3.973642985026042e-07 minutes.\n", "KAP: 8, 7.112820943196615e-07 minutes.\n", "Closure: -4, 3.973642985026042e-07 minutes.\n", "NIA12: 1, 1.5894571940104166e-07 minutes.\n", "CaIM: -4, 6.079673767089843e-07 minutes.\n", "PLD: 0, 1.6689300537109374e-07 minutes.\n", "AnionEM: -4, 2.6226043701171877e-07 minutes.\n", "ROP10: 1, 2.662340799967448e-07 minutes.\n", "NO: -4, 3.735224405924479e-07 minutes.\n", "S1P: 1, 1.3907750447591147e-07 minutes.\n", "GPA1: 0, 2.7815500895182292e-08 minutes.\n", "ROP2: 0, 1.5497207641601563e-07 minutes.\n", "InsP3: -4, 3.695487976074219e-07 minutes.\n", "SphK: 1, 2.8212865193684896e-07 minutes.\n", "NOS: -4, 3.695487976074219e-07 minutes.\n", "Atrboh: -1, 8.742014567057291e-08 minutes.\n", "Ca2_ATPase: -4, 3.735224405924479e-07 minutes.\n", "OST1: 1, 2.2252400716145834e-07 minutes.\n", "Malate: -2, 1.8676122029622396e-07 minutes.\n", "RAC1: -2, 1.0728836059570313e-07 minutes.\n", "InsP6: 1, 1.4702479044596355e-07 minutes.\n", "ADPRc: -4, 3.6557515462239586e-07 minutes.\n", "ABI1: 1, 7.947285970052083e-08 minutes.\n", "ROS: -1, 2.1855036417643228e-07 minutes.\n", "Ca2_c: -4, 2.4239222208658853e-07 minutes.\n", "InsPK: 1, 3.457069396972656e-07 minutes.\n", "PA: 0, 1.5099843343098958e-07 minutes.\n", "GC: -4, 3.735224405924479e-07 minutes.\n", "KOUT: 10, 7.390975952148438e-07 minutes.\n", "PEPC: -1, 1.629193623860677e-07 minutes.\n", "HTPase: -1, 1.430511474609375e-07 minutes.\n", "PLC: -4, 4.172325134277344e-07 minutes.\n", "pH: 1, 1.6689300537109374e-07 minutes.\n", "CIS: -16, 8.344650268554688e-07 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 1.5894571940104166e-07 minutes.\n", "GCR1: 0, 1.231829325358073e-07 minutes.\n", "ERA1: 0, 1.1920928955078126e-08 minutes.\n", "Evaluating Stable State: 6\n", "cGMP: -4, 2.797444661458333e-06 minutes.\n", "RCN1: 1, 2.3444493611653645e-07 minutes.\n", "AGB1: 0, 3.5762786865234374e-08 minutes.\n", "Actin: 6, 9.298324584960937e-07 minutes.\n", "cADPR: -4, 4.013379414876302e-07 minutes.\n", "Depolar: 4, 3.337860107421875e-07 minutes.\n", "KEV: -4, 5.364418029785156e-07 minutes.\n", "KAP: 8, 7.669130961100261e-07 minutes.\n", "Closure: -4, 4.013379414876302e-07 minutes.\n", "NIA12: 1, 1.5099843343098958e-07 minutes.\n", "CaIM: -4, 4.450480143229167e-07 minutes.\n", "PLD: 0, 1.6689300537109374e-07 minutes.\n", "AnionEM: -4, 2.5033950805664064e-07 minutes.\n", "ROP10: 1, 4.3312708536783854e-07 minutes.\n", "NO: -4, 3.735224405924479e-07 minutes.\n", "S1P: 1, 1.3907750447591147e-07 minutes.\n", "GPA1: 0, 2.7815500895182292e-08 minutes.\n", "ROP2: 0, 1.4702479044596355e-07 minutes.\n", "InsP3: -4, 5.046526590983073e-07 minutes.\n", "SphK: 1, 1.4702479044596355e-07 minutes.\n", "NOS: -4, 3.7749608357747394e-07 minutes.\n", "Atrboh: -1, 8.742014567057291e-08 minutes.\n", "Ca2_ATPase: -4, 4.251797993977865e-07 minutes.\n", "OST1: 1, 2.582867940266927e-07 minutes.\n", "Malate: -2, 2.1855036417643228e-07 minutes.\n", "RAC1: -2, 1.231829325358073e-07 minutes.\n", "InsP6: 1, 1.5099843343098958e-07 minutes.\n", "ADPRc: -4, 3.814697265625e-07 minutes.\n", "ABI1: 1, 8.344650268554687e-08 minutes.\n", "ROS: -1, 5.523363749186198e-07 minutes.\n", "Ca2_c: -4, 5.404154459635417e-07 minutes.\n", "InsPK: 1, 3.0597050984700523e-07 minutes.\n", "PA: 0, 1.986821492513021e-07 minutes.\n", "GC: -4, 4.6491622924804686e-07 minutes.\n", "KOUT: 10, 8.424123128255208e-07 minutes.\n", "PEPC: -1, 1.7881393432617188e-07 minutes.\n", "HTPase: -1, 1.5497207641601563e-07 minutes.\n", "PLC: -4, 4.212061564127604e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -16, 9.218851725260417e-07 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 1.7484029134114582e-07 minutes.\n", "GCR1: 0, 1.3113021850585939e-07 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 5\n", "cGMP: -7, 3.64383061726888e-06 minutes.\n", "RCN1: 1, 2.90075937906901e-07 minutes.\n", "AGB1: 0, 3.5762786865234374e-08 minutes.\n", "Actin: 9, 8.265177408854167e-07 minutes.\n", "cADPR: -7, 4.927317301432292e-07 minutes.\n", "Depolar: 16, 7.351239522298177e-07 minutes.\n", "KEV: -7, 5.006790161132813e-07 minutes.\n", "KAP: 23, 1.1920928955078125e-06 minutes.\n", "Closure: -7, 4.927317301432292e-07 minutes.\n", "NIA12: 1, 1.5497207641601563e-07 minutes.\n", "CaIM: -7, 4.013379414876302e-07 minutes.\n", "PLD: 0, 1.5894571940104166e-07 minutes.\n", "AnionEM: -7, 3.417332967122396e-07 minutes.\n", "ROP10: 1, 1.4702479044596355e-07 minutes.\n", "NO: -7, 4.569689432779948e-07 minutes.\n", "S1P: 1, 1.3907750447591147e-07 minutes.\n", "GPA1: 0, 2.384185791015625e-08 minutes.\n", "ROP2: 0, 1.4702479044596355e-07 minutes.\n", "InsP3: -7, 4.6094258626302084e-07 minutes.\n", "SphK: 1, 1.351038614908854e-07 minutes.\n", "NOS: -7, 4.5299530029296873e-07 minutes.\n", "Atrboh: -1, 7.152557373046875e-08 minutes.\n", "Ca2_ATPase: -7, 4.450480143229167e-07 minutes.\n", "OST1: 1, 1.2715657552083333e-07 minutes.\n", "Malate: -2, 1.629193623860677e-07 minutes.\n", "RAC1: -2, 9.5367431640625e-08 minutes.\n", "InsP6: 1, 1.351038614908854e-07 minutes.\n", "ADPRc: -7, 4.490216573079427e-07 minutes.\n", "ABI1: 1, 7.152557373046875e-08 minutes.\n", "ROS: -1, 1.986821492513021e-07 minutes.\n", "Ca2_c: -7, 3.218650817871094e-07 minutes.\n", "InsPK: 1, 1.2715657552083333e-07 minutes.\n", "PA: 0, 1.351038614908854e-07 minutes.\n", "GC: -7, 4.450480143229167e-07 minutes.\n", "KOUT: 40, 1.6689300537109375e-06 minutes.\n", "PEPC: -1, 1.430511474609375e-07 minutes.\n", "HTPase: -1, 1.231829325358073e-07 minutes.\n", "PLC: -7, 4.5299530029296873e-07 minutes.\n", "pH: 1, 1.4702479044596355e-07 minutes.\n", "CIS: -28, 1.2119611104329426e-06 minutes.\n", "ABA: 0, 7.947285970052083e-09 minutes.\n", "ABH1: 0, 7.947285970052083e-09 minutes.\n", "GCR1: 0, 1.3113021850585939e-07 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 4\n", "cGMP: -7, 3.445148468017578e-06 minutes.\n", "RCN1: 1, 1.8676122029622396e-07 minutes.\n", "AGB1: 0, 3.5762786865234374e-08 minutes.\n", "Actin: 9, 8.62280527750651e-07 minutes.\n", "cADPR: -7, 5.324681599934896e-07 minutes.\n", "Depolar: 16, 7.907549540201823e-07 minutes.\n", "KEV: -7, 5.364418029785156e-07 minutes.\n", "KAP: 23, 1.2874603271484376e-06 minutes.\n", "Closure: -7, 5.284945170084636e-07 minutes.\n", "NIA12: 1, 1.6689300537109374e-07 minutes.\n", "CaIM: -7, 4.6491622924804686e-07 minutes.\n", "PLD: 0, 1.7881393432617188e-07 minutes.\n", "AnionEM: -7, 3.7749608357747394e-07 minutes.\n", "ROP10: 1, 1.5894571940104166e-07 minutes.\n", "NO: -7, 4.887580871582031e-07 minutes.\n", "S1P: 1, 1.5099843343098958e-07 minutes.\n", "GPA1: 0, 2.384185791015625e-08 minutes.\n", "ROP2: 0, 1.6689300537109374e-07 minutes.\n", "InsP3: -7, 4.927317301432292e-07 minutes.\n", "SphK: 1, 1.5497207641601563e-07 minutes.\n", "NOS: -7, 5.086263020833333e-07 minutes.\n", "Atrboh: -1, 8.742014567057291e-08 minutes.\n", "Ca2_ATPase: -7, 4.927317301432292e-07 minutes.\n", "OST1: 1, 1.5099843343098958e-07 minutes.\n", "Malate: -2, 1.8676122029622396e-07 minutes.\n", "RAC1: -2, 1.2715657552083333e-07 minutes.\n", "InsP6: 1, 1.5099843343098958e-07 minutes.\n", "ADPRc: -7, 5.006790161132813e-07 minutes.\n", "ABI1: 1, 8.344650268554687e-08 minutes.\n", "ROS: -1, 2.3444493611653645e-07 minutes.\n", "Ca2_c: -7, 3.6557515462239586e-07 minutes.\n", "InsPK: 1, 1.5894571940104166e-07 minutes.\n", "PA: 0, 1.6689300537109374e-07 minutes.\n", "GC: -7, 4.967053731282552e-07 minutes.\n", "KOUT: 40, 1.7642974853515626e-06 minutes.\n", "PEPC: -1, 1.629193623860677e-07 minutes.\n", "HTPase: -1, 1.4702479044596355e-07 minutes.\n", "PLC: -7, 4.967053731282552e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -28, 1.2636184692382812e-06 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 7.947285970052083e-09 minutes.\n", "GCR1: 0, 1.5099843343098958e-07 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 1\n", "cGMP: -7, 2.6543935139973957e-06 minutes.\n", "RCN1: 1, 2.1457672119140626e-07 minutes.\n", "AGB1: 2, 7.549921671549479e-08 minutes.\n", "Actin: 8, 4.5299530029296873e-07 minutes.\n", "cADPR: -7, 3.695487976074219e-07 minutes.\n", "Depolar: 7, 3.457069396972656e-07 minutes.\n", "KEV: -7, 3.5762786865234375e-07 minutes.\n", "KAP: 14, 5.563100179036459e-07 minutes.\n", "Closure: 84, 2.682209014892578e-06 minutes.\n", "NIA12: 1, 1.7484029134114582e-07 minutes.\n", "CaIM: -7, 3.258387247721354e-07 minutes.\n", "PLD: 2, 2.2649765014648436e-07 minutes.\n", "AnionEM: 7, 1.9073486328125e-07 minutes.\n", "ROP10: -1, 2.86102294921875e-07 minutes.\n", "NO: -7, 3.4968058268229164e-07 minutes.\n", "S1P: 1, 1.4702479044596355e-07 minutes.\n", "GPA1: 2, 6.75519307454427e-08 minutes.\n", "ROP2: 2, 1.9470850626627604e-07 minutes.\n", "InsP3: -7, 3.3775965372721356e-07 minutes.\n", "SphK: 1, 1.430511474609375e-07 minutes.\n", "NOS: -7, 3.417332967122396e-07 minutes.\n", "Atrboh: 6, 1.629193623860677e-07 minutes.\n", "Ca2_ATPase: -7, 3.417332967122396e-07 minutes.\n", "OST1: 1, 1.4702479044596355e-07 minutes.\n", "Malate: -9, 2.1855036417643228e-07 minutes.\n", "RAC1: -1, 1.5497207641601563e-07 minutes.\n", "InsP6: 1, 1.3113021850585939e-07 minutes.\n", "ADPRc: -7, 3.258387247721354e-07 minutes.\n", "ABI1: -6, 1.708666483561198e-07 minutes.\n", "ROS: 6, 3.616015116373698e-07 minutes.\n", "Ca2_c: -7, 1.986821492513021e-07 minutes.\n", "InsPK: 1, 1.5099843343098958e-07 minutes.\n", "PA: 2, 1.8676122029622396e-07 minutes.\n", "GC: -7, 3.3775965372721356e-07 minutes.\n", "KOUT: 22, 5.324681599934896e-07 minutes.\n", "PEPC: -1, 1.5497207641601563e-07 minutes.\n", "HTPase: -7, 3.417332967122396e-07 minutes.\n", "PLC: -7, 3.2981236775716145e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -28, 6.635983784993489e-07 minutes.\n", "ABA: 0, 7.947285970052083e-09 minutes.\n", "ABH1: 0, 1.430511474609375e-07 minutes.\n", "GCR1: 0, 7.947285970052083e-09 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 0\n", "cGMP: -5, 1.9828478495279947e-06 minutes.\n", "RCN1: 1, 1.986821492513021e-07 minutes.\n", "AGB1: 1, 4.76837158203125e-08 minutes.\n", "Actin: 6, 4.1325887044270835e-07 minutes.\n", "cADPR: -5, 3.417332967122396e-07 minutes.\n", "Depolar: 5, 2.940495808919271e-07 minutes.\n", "KEV: -5, 3.0994415283203126e-07 minutes.\n", "KAP: 10, 4.6094258626302084e-07 minutes.\n", "Closure: 62, 2.2610028584798175e-06 minutes.\n", "NIA12: 1, 1.7881393432617188e-07 minutes.\n", "CaIM: -5, 2.7815500895182293e-07 minutes.\n", "PLD: 1, 1.8676122029622396e-07 minutes.\n", "AnionEM: 5, 1.430511474609375e-07 minutes.\n", "ROP10: -1, 2.7418136596679685e-07 minutes.\n", "NO: -5, 3.0994415283203126e-07 minutes.\n", "S1P: 1, 1.5099843343098958e-07 minutes.\n", "GPA1: 1, 3.9736429850260414e-08 minutes.\n", "ROP2: 1, 1.7881393432617188e-07 minutes.\n", "InsP3: -5, 3.0994415283203126e-07 minutes.\n", "SphK: 1, 1.4702479044596355e-07 minutes.\n", "NOS: -5, 3.0199686686197915e-07 minutes.\n", "Atrboh: 4, 1.1126200358072917e-07 minutes.\n", "Ca2_ATPase: -5, 3.0199686686197915e-07 minutes.\n", "OST1: 1, 1.4702479044596355e-07 minutes.\n", "Malate: -7, 1.629193623860677e-07 minutes.\n", "RAC1: -1, 1.5894571940104166e-07 minutes.\n", "InsP6: 1, 1.430511474609375e-07 minutes.\n", "ADPRc: -5, 2.90075937906901e-07 minutes.\n", "ABI1: -4, 1.1523564656575521e-07 minutes.\n", "ROS: 4, 2.6226043701171877e-07 minutes.\n", "Ca2_c: -5, 1.5894571940104166e-07 minutes.\n", "InsPK: 1, 2.7418136596679685e-07 minutes.\n", "PA: 1, 1.8676122029622396e-07 minutes.\n", "GC: -5, 2.940495808919271e-07 minutes.\n", "KOUT: 16, 4.1325887044270835e-07 minutes.\n", "PEPC: -1, 2.384185791015625e-07 minutes.\n", "HTPase: -5, 3.814697265625e-07 minutes.\n", "PLC: -5, 4.887580871582031e-07 minutes.\n", "pH: 1, 1.5497207641601563e-07 minutes.\n", "CIS: -20, 5.324681599934896e-07 minutes.\n", "ABA: 0, 1.5894571940104166e-08 minutes.\n", "ABH1: 0, 1.5497207641601563e-07 minutes.\n", "GCR1: 0, 1.351038614908854e-07 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 2\n", "cGMP: -7, 1.9590059916178386e-06 minutes.\n", "RCN1: 1, 1.8676122029622396e-07 minutes.\n", "AGB1: 2, 7.152557373046875e-08 minutes.\n", "Actin: 8, 4.0531158447265624e-07 minutes.\n", "cADPR: -7, 3.457069396972656e-07 minutes.\n", "Depolar: 7, 3.0199686686197915e-07 minutes.\n", "KEV: -7, 3.3775965372721356e-07 minutes.\n", "KAP: 14, 5.046526590983073e-07 minutes.\n", "Closure: 84, 2.5113423665364583e-06 minutes.\n", "NIA12: 1, 2.86102294921875e-07 minutes.\n", "CaIM: -7, 3.218650817871094e-07 minutes.\n", "PLD: 2, 2.2252400716145834e-07 minutes.\n", "AnionEM: 7, 1.8278757731119793e-07 minutes.\n", "ROP10: -1, 2.86102294921875e-07 minutes.\n", "NO: -7, 3.5762786865234375e-07 minutes.\n", "S1P: 1, 1.6689300537109374e-07 minutes.\n", "GPA1: 2, 6.357828776041667e-08 minutes.\n", "ROP2: 2, 2.1457672119140626e-07 minutes.\n", "InsP3: -7, 3.218650817871094e-07 minutes.\n", "SphK: 1, 1.4702479044596355e-07 minutes.\n", "NOS: -7, 3.0994415283203126e-07 minutes.\n", "Atrboh: 6, 1.5099843343098958e-07 minutes.\n", "Ca2_ATPase: -7, 3.337860107421875e-07 minutes.\n", "OST1: 1, 1.3907750447591147e-07 minutes.\n", "Malate: -9, 1.9470850626627604e-07 minutes.\n", "RAC1: -1, 1.3907750447591147e-07 minutes.\n", "InsP6: 1, 1.3113021850585939e-07 minutes.\n", "ADPRc: -7, 3.258387247721354e-07 minutes.\n", "ABI1: -6, 1.5099843343098958e-07 minutes.\n", "ROS: 6, 2.8212865193684896e-07 minutes.\n", "Ca2_c: -7, 1.9470850626627604e-07 minutes.\n", "InsPK: 1, 1.430511474609375e-07 minutes.\n", "PA: 2, 1.708666483561198e-07 minutes.\n", "GC: -7, 3.139177958170573e-07 minutes.\n", "KOUT: 22, 4.927317301432292e-07 minutes.\n", "PEPC: -1, 1.5099843343098958e-07 minutes.\n", "HTPase: -7, 3.178914388020833e-07 minutes.\n", "PLC: -7, 3.258387247721354e-07 minutes.\n", "pH: 1, 1.629193623860677e-07 minutes.\n", "CIS: -28, 6.198883056640625e-07 minutes.\n", "ABA: 0, 7.947285970052083e-09 minutes.\n", "ABH1: 0, 1.3907750447591147e-07 minutes.\n", "GCR1: 0, 1.1920928955078126e-08 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 3\n", "cGMP: -5, 1.9272168477376303e-06 minutes.\n", "RCN1: 1, 2.0265579223632812e-07 minutes.\n", "AGB1: 1, 5.1657358805338543e-08 minutes.\n", "Actin: 6, 3.933906555175781e-07 minutes.\n", "cADPR: -5, 3.417332967122396e-07 minutes.\n", "Depolar: 5, 3.0597050984700523e-07 minutes.\n", "KEV: -5, 3.178914388020833e-07 minutes.\n", "KAP: 10, 4.6094258626302084e-07 minutes.\n", "Closure: 62, 2.2530555725097655e-06 minutes.\n", "NIA12: 1, 2.5431315104166666e-07 minutes.\n", "CaIM: -5, 2.86102294921875e-07 minutes.\n", "PLD: 1, 2.106030782063802e-07 minutes.\n", "AnionEM: 5, 1.9073486328125e-07 minutes.\n", "ROP10: -1, 2.7418136596679685e-07 minutes.\n", "NO: -5, 3.0199686686197915e-07 minutes.\n", "S1P: 1, 3.3775965372721356e-07 minutes.\n", "GPA1: 1, 3.9736429850260414e-08 minutes.\n", "ROP2: 1, 1.7881393432617188e-07 minutes.\n", "InsP3: -5, 3.0199686686197915e-07 minutes.\n", "SphK: 1, 2.7815500895182293e-07 minutes.\n", "NOS: -5, 3.139177958170573e-07 minutes.\n", "Atrboh: 4, 1.351038614908854e-07 minutes.\n", "Ca2_ATPase: -5, 3.0994415283203126e-07 minutes.\n", "OST1: 1, 1.5894571940104166e-07 minutes.\n", "Malate: -7, 1.708666483561198e-07 minutes.\n", "RAC1: -1, 1.4702479044596355e-07 minutes.\n", "InsP6: 1, 1.4702479044596355e-07 minutes.\n", "ADPRc: -5, 3.0994415283203126e-07 minutes.\n", "ABI1: -4, 1.231829325358073e-07 minutes.\n", "ROS: 4, 2.5431315104166666e-07 minutes.\n", "Ca2_c: -5, 1.629193623860677e-07 minutes.\n", "InsPK: 1, 1.5099843343098958e-07 minutes.\n", "PA: 1, 1.708666483561198e-07 minutes.\n", "GC: -5, 3.0199686686197915e-07 minutes.\n", "KOUT: 16, 4.251797993977865e-07 minutes.\n", "PEPC: -1, 1.5497207641601563e-07 minutes.\n", "HTPase: -5, 3.0597050984700523e-07 minutes.\n", "PLC: -5, 3.0994415283203126e-07 minutes.\n", "pH: 1, 3.258387247721354e-07 minutes.\n", "CIS: -20, 5.68230946858724e-07 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 1.5497207641601563e-07 minutes.\n", "GCR1: 0, 3.258387247721354e-07 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 13\n", "cGMP: -7, 2.292792002360026e-06 minutes.\n", "RCN1: 1, 2.0265579223632812e-07 minutes.\n", "AGB1: 2, 7.947285970052083e-08 minutes.\n", "Actin: 8, 4.3312708536783854e-07 minutes.\n", "cADPR: -7, 3.6557515462239586e-07 minutes.\n", "Depolar: 7, 3.218650817871094e-07 minutes.\n", "KEV: -7, 3.457069396972656e-07 minutes.\n", "KAP: 14, 5.324681599934896e-07 minutes.\n", "Closure: 84, 2.6146570841471354e-06 minutes.\n", "NIA12: 1, 1.8278757731119793e-07 minutes.\n", "CaIM: -7, 3.258387247721354e-07 minutes.\n", "PLD: 2, 2.1855036417643228e-07 minutes.\n", "AnionEM: 7, 1.8278757731119793e-07 minutes.\n", "ROP10: 1, 2.702077229817708e-07 minutes.\n", "NO: -7, 3.218650817871094e-07 minutes.\n", "S1P: 1, 1.5099843343098958e-07 minutes.\n", "GPA1: 2, 5.960464477539063e-08 minutes.\n", "ROP2: 2, 1.986821492513021e-07 minutes.\n", "InsP3: -7, 3.337860107421875e-07 minutes.\n", "SphK: 1, 1.430511474609375e-07 minutes.\n", "NOS: -7, 3.218650817871094e-07 minutes.\n", "Atrboh: 6, 1.5894571940104166e-07 minutes.\n", "Ca2_ATPase: -7, 3.2981236775716145e-07 minutes.\n", "OST1: 1, 1.430511474609375e-07 minutes.\n", "Malate: -9, 1.986821492513021e-07 minutes.\n", "RAC1: -1, 1.430511474609375e-07 minutes.\n", "InsP6: 1, 1.3113021850585939e-07 minutes.\n", "ADPRc: -7, 3.695487976074219e-07 minutes.\n", "ABI1: -6, 2.2252400716145834e-07 minutes.\n", "ROS: 6, 4.291534423828125e-07 minutes.\n", "Ca2_c: -7, 2.0662943522135417e-07 minutes.\n", "InsPK: 1, 1.8278757731119793e-07 minutes.\n", "PA: 2, 2.0265579223632812e-07 minutes.\n", "GC: -7, 3.3775965372721356e-07 minutes.\n", "KOUT: 22, 5.245208740234375e-07 minutes.\n", "PEPC: -1, 1.5497207641601563e-07 minutes.\n", "HTPase: -7, 3.5762786865234375e-07 minutes.\n", "PLC: -7, 3.3775965372721356e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -28, 6.596247355143229e-07 minutes.\n", "ABA: 0, 2.384185791015625e-08 minutes.\n", "ABH1: 0, 1.430511474609375e-07 minutes.\n", "GCR1: 0, 7.947285970052083e-09 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 15\n", "cGMP: -5, 1.9590059916178386e-06 minutes.\n", "RCN1: 1, 2.5033950805664064e-07 minutes.\n", "AGB1: 1, 4.76837158203125e-08 minutes.\n", "Actin: 6, 4.887580871582031e-07 minutes.\n", "cADPR: -5, 3.178914388020833e-07 minutes.\n", "Depolar: 5, 2.7815500895182293e-07 minutes.\n", "KEV: -5, 2.90075937906901e-07 minutes.\n", "KAP: 10, 4.3312708536783854e-07 minutes.\n", "Closure: 62, 2.0742416381835936e-06 minutes.\n", "NIA12: 1, 1.5894571940104166e-07 minutes.\n", "CaIM: -5, 2.5033950805664064e-07 minutes.\n", "PLD: 1, 1.629193623860677e-07 minutes.\n", "AnionEM: 5, 1.1920928955078125e-07 minutes.\n", "ROP10: 1, 2.463658650716146e-07 minutes.\n", "NO: -5, 2.702077229817708e-07 minutes.\n", "S1P: 1, 1.3907750447591147e-07 minutes.\n", "GPA1: 1, 3.5762786865234374e-08 minutes.\n", "ROP2: 1, 1.5099843343098958e-07 minutes.\n", "InsP3: -5, 2.7418136596679685e-07 minutes.\n", "SphK: 1, 1.231829325358073e-07 minutes.\n", "NOS: -5, 2.6226043701171877e-07 minutes.\n", "Atrboh: 4, 9.934107462565105e-08 minutes.\n", "Ca2_ATPase: -5, 2.582867940266927e-07 minutes.\n", "OST1: 1, 1.3113021850585939e-07 minutes.\n", "Malate: -7, 1.4702479044596355e-07 minutes.\n", "RAC1: -1, 1.3113021850585939e-07 minutes.\n", "InsP6: 1, 1.231829325358073e-07 minutes.\n", "ADPRc: -5, 2.582867940266927e-07 minutes.\n", "ABI1: -4, 8.742014567057291e-08 minutes.\n", "ROS: 4, 2.2252400716145834e-07 minutes.\n", "Ca2_c: -5, 1.3907750447591147e-07 minutes.\n", "InsPK: 1, 1.3113021850585939e-07 minutes.\n", "PA: 1, 1.5099843343098958e-07 minutes.\n", "GC: -5, 2.5431315104166666e-07 minutes.\n", "KOUT: 16, 3.735224405924479e-07 minutes.\n", "PEPC: -1, 1.351038614908854e-07 minutes.\n", "HTPase: -5, 2.5431315104166666e-07 minutes.\n", "PLC: -5, 2.6226043701171877e-07 minutes.\n", "pH: 1, 1.231829325358073e-07 minutes.\n", "CIS: -20, 4.688898722330729e-07 minutes.\n", "ABA: 0, 7.947285970052083e-09 minutes.\n", "ABH1: 0, 1.3907750447591147e-07 minutes.\n", "GCR1: 0, 1.1523564656575521e-07 minutes.\n", "ERA1: 0, 1.1920928955078126e-08 minutes.\n", "Evaluating Stable State: 12\n", "cGMP: -7, 2.2331873575846355e-06 minutes.\n", "RCN1: 1, 2.1457672119140626e-07 minutes.\n", "AGB1: 2, 7.549921671549479e-08 minutes.\n", "Actin: 8, 4.6094258626302084e-07 minutes.\n", "cADPR: -7, 3.616015116373698e-07 minutes.\n", "Depolar: 7, 3.3775965372721356e-07 minutes.\n", "KEV: -7, 3.4968058268229164e-07 minutes.\n", "KAP: 14, 5.284945170084636e-07 minutes.\n", "Closure: 84, 2.610683441162109e-06 minutes.\n", "NIA12: 1, 1.8676122029622396e-07 minutes.\n", "CaIM: -7, 3.258387247721354e-07 minutes.\n", "PLD: 2, 2.106030782063802e-07 minutes.\n", "AnionEM: 7, 1.7881393432617188e-07 minutes.\n", "ROP10: 1, 2.662340799967448e-07 minutes.\n", "NO: -7, 3.3775965372721356e-07 minutes.\n", "S1P: 1, 1.4702479044596355e-07 minutes.\n", "GPA1: 2, 6.357828776041667e-08 minutes.\n", "ROP2: 2, 1.986821492513021e-07 minutes.\n", "InsP3: -7, 3.337860107421875e-07 minutes.\n", "SphK: 1, 1.430511474609375e-07 minutes.\n", "NOS: -7, 3.337860107421875e-07 minutes.\n", "Atrboh: 6, 1.6689300537109374e-07 minutes.\n", "Ca2_ATPase: -7, 3.417332967122396e-07 minutes.\n", "OST1: 1, 1.430511474609375e-07 minutes.\n", "Malate: -9, 2.0662943522135417e-07 minutes.\n", "RAC1: -1, 1.5099843343098958e-07 minutes.\n", "InsP6: 1, 1.2715657552083333e-07 minutes.\n", "ADPRc: -7, 3.0597050984700523e-07 minutes.\n", "ABI1: -6, 1.5894571940104166e-07 minutes.\n", "ROS: 6, 2.8212865193684896e-07 minutes.\n", "Ca2_c: -7, 2.1457672119140626e-07 minutes.\n", "InsPK: 1, 1.5894571940104166e-07 minutes.\n", "PA: 2, 1.8278757731119793e-07 minutes.\n", "GC: -7, 3.258387247721354e-07 minutes.\n", "KOUT: 22, 5.165735880533854e-07 minutes.\n", "PEPC: -1, 1.430511474609375e-07 minutes.\n", "HTPase: -7, 3.337860107421875e-07 minutes.\n", "PLC: -7, 3.3775965372721356e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -28, 6.477038065592448e-07 minutes.\n", "ABA: 0, 1.5894571940104166e-08 minutes.\n", "ABH1: 0, 1.3907750447591147e-07 minutes.\n", "GCR1: 0, 1.1920928955078126e-08 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n", "Evaluating Stable State: 14\n", "cGMP: -5, 1.9510587056477865e-06 minutes.\n", "RCN1: 1, 2.0662943522135417e-07 minutes.\n", "AGB1: 1, 5.1657358805338543e-08 minutes.\n", "Actin: 6, 4.0531158447265624e-07 minutes.\n", "cADPR: -5, 3.178914388020833e-07 minutes.\n", "Depolar: 5, 2.90075937906901e-07 minutes.\n", "KEV: -5, 3.218650817871094e-07 minutes.\n", "KAP: 10, 4.688898722330729e-07 minutes.\n", "Closure: 62, 2.2411346435546876e-06 minutes.\n", "NIA12: 1, 1.7484029134114582e-07 minutes.\n", "CaIM: -5, 2.8212865193684896e-07 minutes.\n", "PLD: 1, 1.8676122029622396e-07 minutes.\n", "AnionEM: 5, 1.3907750447591147e-07 minutes.\n", "ROP10: 1, 2.662340799967448e-07 minutes.\n", "NO: -5, 2.940495808919271e-07 minutes.\n", "S1P: 1, 1.5099843343098958e-07 minutes.\n", "GPA1: 1, 4.3710072835286455e-08 minutes.\n", "ROP2: 1, 1.708666483561198e-07 minutes.\n", "InsP3: -5, 2.90075937906901e-07 minutes.\n", "SphK: 1, 1.351038614908854e-07 minutes.\n", "NOS: -5, 2.86102294921875e-07 minutes.\n", "Atrboh: 4, 1.231829325358073e-07 minutes.\n", "Ca2_ATPase: -5, 2.90075937906901e-07 minutes.\n", "OST1: 1, 1.5099843343098958e-07 minutes.\n", "Malate: -7, 1.6689300537109374e-07 minutes.\n", "RAC1: -1, 1.4702479044596355e-07 minutes.\n", "InsP6: 1, 1.351038614908854e-07 minutes.\n", "ADPRc: -5, 2.90075937906901e-07 minutes.\n", "ABI1: -4, 1.1920928955078125e-07 minutes.\n", "ROS: 4, 2.6226043701171877e-07 minutes.\n", "Ca2_c: -5, 1.629193623860677e-07 minutes.\n", "InsPK: 1, 1.5894571940104166e-07 minutes.\n", "PA: 1, 1.6689300537109374e-07 minutes.\n", "GC: -5, 2.940495808919271e-07 minutes.\n", "KOUT: 16, 4.172325134277344e-07 minutes.\n", "PEPC: -1, 1.5894571940104166e-07 minutes.\n", "HTPase: -5, 3.0597050984700523e-07 minutes.\n", "PLC: -5, 3.0199686686197915e-07 minutes.\n", "pH: 1, 1.5894571940104166e-07 minutes.\n", "CIS: -20, 5.205472310384114e-07 minutes.\n", "ABA: 0, 1.1920928955078126e-08 minutes.\n", "ABH1: 0, 1.5497207641601563e-07 minutes.\n", "GCR1: 0, 1.231829325358073e-07 minutes.\n", "ERA1: 0, 7.947285970052083e-09 minutes.\n" ] } ], "source": [ "# Count paths\n", "paths = model.CountPaths(model.Nodes, ss_wise = True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's now compare BooLEVARD's output with stable-state analysis results:" ] }, { "cell_type": "code", "execution_count": 90, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Starting plotting..\n", "Starting calculating row orders..\n", "Reordering rows..\n", "Starting calculating col orders..\n", "Reordering cols..\n", "Plotting matrix..\n", "Starting plotting HeatmapAnnotations\n", "Collecting legends..\n", "Collecting annotation legends..\n", "Starting plotting..\n", "Starting calculating col orders..\n", "Reordering cols..\n", "Plotting matrix..\n", "Collecting legends..\n", "Estimated legend width: 7.5 mm\n" ] }, { "data": { "text/plain": [ "Text(0.013, 1.0025, ' ________')" ] }, "execution_count": 90, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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x5oX8kQAALLjHvkA4CUffPCB+vXrp7i4OA0fPlzly5eXr6+vJk6cqH379lka22azqXbt2qpdu7Y6d+6sWrVq6cMPP9RDDz1UoDFlZmZKkp566il17Ngxx22yflG89dZbtW/fPn3xxRf67rvv9O6772ratGmaNWtWvnECAABcS08++aTmzZtnX27Tpo1WrVplXy5btqxiY2Nz7X/PPfdo7dq1Gj58uJo2barg4GBlZmbqjjvusOdPzvD19c2xPeuTlyEhIYqKitKOHTucHlOSw5XzrsrIyMixPb9Y80KeCABAdhTyAcBJ5cqVU/HixfX7779nW7dr1y75+PioUqVKkqQaNWrk+wvUp59+qurVq2vhwoUOvzxlXbnuKdWrV1fp0qV19OhRe1tuv6w5G1Nu/bM+vl6sWLE8f5nNEhYWpv79+6t///5KSUnRrbfeqrFjx/ILGgAAcJsrOVuVKlW0d+/ebNtd3TZixAj985//tC9nXV3ujDNnzmjFihUaN26cRo8ebW/P6bYxVgrqWe666y69/fbbWrdunWJiYvLctkqVKsrMzNSePXtUr149e/uxY8d09uxZValSxd5WunRpnT171qF/WlqaQ47pqrz2lzwRAABH3FoHAJzk6+urDh066IsvvtCBAwfs7ceOHdOCBQvUunVr+8eZ//GPf2j79u36/PPPs42TdRVS1lVKV16VtGHDBq1bt86t+DZs2KDz589na9+4caNOnTrl8PHyEiVK5PgxbmdjKl68uCRl+2WufPnyatu2rd56660cf6k7ceKE/f+nTp1yWBccHKyaNWvq0qVLue0iAABAvlzJ2Tp27Kh169Zp27Zt9u1Onz6tDz/80GHM+vXrKzY21v6Ijo52KR4p+5Xo06dPz7ZtiRIlJGXPsVwxYsQIlShRQg899JCOHTuWbf2+ffv02muvSZLuvPPOHGOZOnWqJKlz5872tho1amj16tUO27399tu5XpHvjBIlSuS4r+SJAABkxxX5AHCV9957T0uWLMnW/uSTT+qFF17QsmXL1Lp1az322GPy8/PTW2+9pUuXLmnKlCn2bYcPH65PP/1UPXv21IABAxQdHa3Tp0/ryy+/1KxZs9SkSRPdddddWrhwobp166bOnTsrISFBs2bNUv369ZWSkuJy3O+//74+/PBDdevWTdHR0fL399dvv/2m9957T4GBgXr22Wft20ZHR+vjjz9WfHy8brzxRgUHB6tLly5OxxQUFKT69evr448/Vu3atRUWFqaGDRuqYcOGmjFjhlq3bq1GjRpp4MCBql69uo4dO6Z169bpjz/+0Pbt2yX99Qtx27ZtFR0drbCwMG3atEmffvqpBg8e7PK+AwCA61NuedvYsWOdytlGjBihDz74QO3bt9fjjz+uEiVK6N1331XlypV1+vRpj1whHxISoltvvVVTpkxRenq6KlSooO+++04JCQnZts36A8Fzzz2nXr16qVixYurSpYu9wO+MGjVqaMGCBbr33ntVr1499enTRw0bNlRaWprWrl2rTz75RP369ZMkNWnSRH379tXbb7+ts2fPqk2bNtq4caPmzZunuLg4tWvXzj7uQw89pEceeUT/+Mc/1L59e23fvl1Lly5V2bJl3T420dHRmjlzpl544QXVrFlT5cuX12233UaeCABATgwAwBhjzJw5c4ykXB+HDh0yxhizZcsW07FjRxMcHGyKFy9u2rVrZ9auXZttvFOnTpnBgwebChUqGH9/f1OxYkXTt29fc/LkSWOMMZmZmeall14yVapUMQEBAaZZs2Zm8eLFpm/fvqZKlSoOY0kyY8aMyTP+X375xQwfPtzccMMNJiwszPj5+ZnIyEjTs2dPs2XLFodtU1JSzH333WdKlSplJNnncyWmtWvXmujoaOPv758tvn379pk+ffqYiIgIU6xYMVOhQgVz1113mU8//dS+zQsvvGBuuukmU6pUKRMUFGTq1q1rXnzxRZOWlpbnfgIAADiTtzmbs23dutXccsstJiAgwFSsWNFMnDjRvP7660aSSUpKyjeWKlWqmM6dO+e5zR9//GG6detmSpUqZUJDQ03Pnj3NkSNHcszxJkyYYCpUqGB8fHyMJJOQkGCM+SsfHDRoUI7z9+3bN1v77t27zcCBA03VqlWNv7+/KVmypGnVqpV54403TGpqqn279PR0M27cOFOtWjVTrFgxU6lSJfPMM884bGOMMRkZGWbkyJGmbNmypnjx4qZjx45m79692ebPem5+/vlnh/4rV640kszKlSvtbUlJSaZz586mZMmSRpJp06aNMYY8EQCAnNiMceKbZiyqWrWqFi1apKZNmxbI+KtWrVJqaqruuOOOAhkfAAAAAHD9GDJkiN566y2lpKTk+qWtAAAA11KRuEf+qlWrcvw4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eT6u/kLn/MyfPz/fRMvKvFb3uWXLliY5OTnP+KZOnZrrusTERDN16lTz6KOPmkcffdRMmzYt349A+/v7m7i4OPPll1/mmwA669SpU+a1114zTZs2NaVLl871NmJZx9LVY231/GGMMV27djU2m800btzY3HvvvaZXr1727y/p3LmzyczMzLFfWFiYGTBggEPidrXcnqOs53fixImmSZMmJigoyAQFBZkmTZqYSZMmmUuXLuXY18r+euJYhYeHm1dffdXle+Fa7bt582bzzDPPmFq1apnAwEDTu3dvh48RF8S8Vs61Vo+1lfeWK2VmZub6+nWFM+dLK/2HDBliGjVqlOMvsElJSaZhw4bmySefzLFvamqqGThwoClXrpypWrWqmTdvnsP6r776yqxdu9bjfY3567X1yiuvmNTUVLN161bz8ccfm//+979m69atufbJUhDva1msvv944lxhNQZjvJujeaK/lXOIMUXneSyo17qz5yWr83viGFjN6YxxL6/LUhD5nTHO53jGuJ/nGeOZ17Ix7ud7Wazkfca4n/sZY/0YeOoYWsnlPNHfSj7oiRisntc98Tx4Kkc0xnN5YpaCzhezWMkbjbGe/1ntb4y1HNKYgs0jgb8rmzHGyIPCw8O1e/duhYaG6uTJk4qIiNDFixdVrFgxZWRkqFy5cjp9+nSu/cPCwvJcX61aNS1ZskR16tTRr7/+qiZNmuidd97Rgw8+mOP2S5cu1ezZs/XFF18oKipKDzzwgB544AHdeuut2r59u8qXL+/S/v3444965JFHtHbtWoWGhjqsS05O1s0336w333xTt912W7a+vr6+at68uR588EH17t1bJUuWvGZz16xZU/v379cNN9ygAQMG6P777882Rl58fX1ljJHNZrO35bScmZnpVN+r5dR32rRpmjJliurWrStJunjxonbu3Kk///xTktSlSxd17txZjzzySLbxvPU8WZnXqm7dujksG2N09OhRbdq0SaNHj9aYMWM8PqdkfZ979Ojh1DGeM2dOtrY333xTw4YN0+XLlxUaGipjjJKTk+Xn56dp06bpsccey3GshQsX6tNPP9XXX3+t4OBg9e3bV/3791etWrWc2OPsx/pKNptNW7du1cGDB3P8eUhOTs5z7OTkZD3xxBNauHChQ7uvr6+io6Ptr8uQkBCnYr2SMUbvv/++Pv30UyUkJMgYo6pVq6p79+7q16+ffHx8cuz3wgsv6JtvvtHGjRsVHR2tAQMG6L777nPqeUtJSVH79u31888/KzY2VvXq1ZPNZtNvv/2mZcuWqUWLFlqxYoUCAwNz3N+HHnrI5Z/D3Pqmpqbq448/Vt++ffMd4+LFiwoKCtKhQ4f02Wefaffu3ZKkWrVqqUePHqpUqVKB9M3y22+/qXHjxnrsscf08ccfKygoSP369dOAAQNy7e/uvFOnTtXLL7/s1rn2yvNlr169XH5duvv+IEm33XabnElhVq5cma3N6vnS3f5nzpxRy5YtdejQId13332qX7++pL+e7w8//FAVKlTQunXrFBYWlu9+XUtZr4l+/frpf//7n/35Msaofv36mjt3rpo3b37N47L6/mM1L/NEDJJ3c7Tc+l8tr/5W8jWp6DyPVnkrj8viiWNgJaeT3M/rsljN7yRrOZ7kfp4neSbXk9zP97JYyfsk93O/K4+BO/lfXv1dyQEl67mcJ3JByb180BMxWMkNJev5YdYYVt6brOSJWbyVL2b5u+aNVyqsOSTwd+bxQn5ISIhDAlO6dGmdOXMm1/VXy6+QHxoaqnPnztmXixcvrvPnz+d6gvfx8VGZMmX01ltvqXv37vb2yMhItwr5VuzYscOpZKRKlSoFMv/u3bv17rvv6pVXXlFgYKC6d++uAQMGOPVLia+vr3bt2qXw8HBJ0oEDB9S6dWsdOnRINptNJ06cUO3atZWRkZFj3x9++EGNGzfOc46r3+BTU1M1atQohzEDAgI0ceJESdLixYt1++23KygoKMfxfv31V+3Zs0fR0dEuHVOrz5O7817po48+0kcffeSQcN1333269957c+0zYMAAh2UfHx+VL19et99+u26//fYCm1eyts++vr664447FBAQIEk6f/68vv/+e3Xp0kWSdOnSJX377bfZkrTvv/9eHTp00JNPPqmRI0faf5aPHz+ul19+WVOnTtXy5cvVrl27XOfesWOHmjZtqs6dO2vp0qVq0aKFBgwYoHvuuSfX15WU/Vjn5r333nNquysdP35cERER2fZ3x44dOn36tMaNG6ft27fr4sWLatq0qZ599ll17tzZ6fGXL1+uLVu2KDg4WE2aNFGrVq2c7vvTTz+pTZs2atCggfbu3asePXpowIABatOmTa59Ro8erfnz5+urr75So0aNsu1T586d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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Convert CountPaths output to a DataFrame\n", "paths_sum = pd.DataFrame(paths)\n", "paths_sum.columns = model.Nodes \n", "paths_sum = paths_sum.loc[:, ~paths_sum.columns.isin([\"ABA\", \"ABH1\", \"GCR1\", \"ERA1\"])] # Filter out the input nodes\n", "paths_sum.index = model.Info.columns[:-2] # Set the index to the stable states\n", "\n", "# Log-transform the data for better visualization\n", "def log_signed(x, base):\n", " return np.sign(x) * np.log1p(np.abs(x)) / np.log(base)\n", "paths_sum = log_signed(paths_sum, 4) # Let's do the signed log-transform with base 4\n", "\n", "# Extract the stable states from te model.Info object\n", "ls_info = model.Info.loc[model.Nodes, model.Info.columns[:-2]].transpose()\n", "ls_info = ls_info.loc[:, ~ls_info.columns.isin([\"ABA\", \"ABH1\", \"GCR1\", \"ERA1\"])]\n", "ls_info.index = paths_sum.index\n", "\n", "# Prepare for plotting\n", "# - Annotations\n", "annot_ls = pd.DataFrame([\"Local State\"]*len(ls_info.columns), columns = [\"Score\"])\n", "annot_paths = pd.DataFrame([\"Path Count\"]*len(ls_info.columns), columns = [\"Score\"])\n", "annot_ls.index = annot_paths.index = paths_sum.columns\n", "annot_inputs = model.Info.loc[[\"ABA\", \"ABH1\", \"GCR1\", \"ERA1\"], model.Info.columns[:-2]].transpose().astype(str)\n", "annot_inputs.index = paths_sum.index\n", "colors_row_ha = {input_name: {\"0\": \"#eeeeee\", \"1\": \"#212121\"} for input_name in [\"ABA\", \"ABH1\", \"GCR1\", \"ERA1\"]}\n", "row_ha_inputs = HeatmapAnnotation(df = annot_inputs, colors = colors_row_ha, plot = False, legend = False, axis = 0, label_kws = dict(size = 9), label_side = \"bottom\", wgap = 0.001, plot_kws = dict(linewidth = 0.001, linecolor = \"white\", linestyle = \":\"), legend_width=90) # Annotation for inputs\n", "\n", "# Perform row (nodes) and column (stablee states) clustering\n", "row_linkage = linkage(paths_sum.values, method=\"average\", metric=\"euclidean\")\n", "col_linkage = linkage(paths_sum.values.T, method=\"average\", metric=\"euclidean\")\n", "row_order = leaves_list(row_linkage)\n", "col_order = leaves_list(col_linkage)\n", "row_labels = paths_sum.index[row_order]\n", "col_labels = paths_sum.columns[col_order]\n", "paths_sum = paths_sum.loc[row_labels, col_labels]\n", "ls_info = ls_info.loc[row_labels, col_labels]\n", "\n", "# - Subheatmap 1: Local States\n", "cmap_ls = ListedColormap([\"#eeeeee\", \"#212121\"])\n", "hmap_ls = ClusterMapPlotter(\n", " ls_info.astype(int),\n", " row_cluster = False, col_cluster = False,\n", " show_rownames = True, show_colnames = True,\n", " cmap = cmap_ls, linewidths = 0.001, linecolor = \"white\",\n", " plot = False,\n", " plot_legend = True, label = \"Local States\",\n", " left_annotation = row_ha_inputs,\n", " xlabel = \"Local States\",\n", " xlabel_kws=dict(color='black',fontsize=12,labelpad=7, x = 1, ha = \"center\"),\n", " xlabel_side='top'\n", ")\n", "\n", "# - Subheatmap 2: Path Count\n", "cmap_paths = LinearSegmentedColormap.from_list(\"custom_diverging\", [\"#696bd4\", \"#FFFFFF\", \"#e55451\"], N = 256)\n", "vmax_paths = np.max(np.abs(paths_sum.values))\n", "hmap_paths = ClusterMapPlotter(\n", " paths_sum,\n", " row_cluster = False, col_cluster = False,\n", " show_rownames = True, show_colnames = True,\n", " cmap = cmap_paths, vmin = -vmax_paths, vmax = vmax_paths,\n", " linewidths = 0.001, linecolor = \"white\",\n", " plot = False,\n", " plot_legend = True, label = \"Log4PC\",\n", " xlabel = \"Log-PathCounts\",\n", " xlabel_kws=dict(color='black',fontsize=12,labelpad=7),\n", " xlabel_side='top'\n", ")\n", "\n", "# - Merge subheatmaps\n", "hmap_list = [hmap_ls, hmap_paths]\n", "plt.figure(figsize = (17, 4))\n", "ax, legend_axes = composite(cmlist = hmap_list, main = 0, col_gap = 0.1, legend_hpad = 50, legend_gap = 8)\n", "\n", "ax.text(0.013, 1.015, \" Inputs\", ha = \"center\", va = \"bottom\", fontsize = 8)\n", "ax.text(0.013, 1.0025, \" ________\", ha = \"center\", va = \"bottom\", fontsize = 8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "**Figure 1.** Heatmaps showing the Boolean states (left) and the corresponding transduction path counts (right), calculated using BooLEVARD, for the stable states reached by the Guard Cell Ascibic Acid Boolean model. The Boolean activation states of the input nodes (*ABA*, *ABH1*, *GCR1* and *ERA1*) that drive each stable state are shown to the left of both heatmaps (black = ON, white = OFF). Path counts are shown on a signed logarithmic scale (Log₄ of the number of activating or inhibitory paths). Red indicates a high number of activating paths toward a node; blue indicates inhibitory paths. Rows (stable states) and columns (nodes) have been clustered using Euclidean distance to highlight patterns across conditions and model components.\n", "\n", "
\n", "\n", "We observe that for some stable states driven by nearly identical input combinations (e.g., similar patterns in *ABA*, *ABH1*, *GCR1*, and *ERA1*), the activating and inhibitory path counts for certain nodes vary considerably. This reveals that although the network reaches the same binary ON/OFF state, the intensity and number of signaling paths regulating a node can differ significantly.\n", "\n", "**Calcium signaling modulates stomatal closure inhibition**\n", "\n", "***Key proteins and their role in calcium signaling in guard cells:***\n", "\n", "- **ABA:** A phytohormone that promotes cytosolic calcium influx in guard cells by activating plasma membrane calcium channels and releasing calcium from intracellular stores.\n", "- **ABH1:** A regulator involved in ABA signaling that modulates calcium sensitivity, helping control stomatal closure during stress. *abh1* mutants are hypersensitive to ABA.\n", "- **ERA1:** Required for proper stomatal opening in response to blue light and for maintaining overall stomatal openness.\n", "- **CaIM:** A calcium channel that facilitates calcium influx into the cytosol, favoring stomatal closure.\n", "\n", "The stable states associated with *Closure* inhibition (see **Figure 1**) can be divided into two groups based on the intensity of inhibiti:\n", "- **Higher Closure Inhibition (HiC):** stable states 4 and 5.\n", "- **Lower Closure Inhibition (LoC):** stable states 7, 8, 9, 10 and 11.\n", "\n", "These stable states share identical ON/OFF patterns for most nodes. The only notable difference within the LoC group is that *ROP10* is OFF in states 8, 9, 10, and 11, while it is ON in states 6 and 7. Despite this, the intensity of *Closure* inhibition remains similar across all LoC states.\n", "\n", "***Differences between HiC and LoC groups***\n", "\n", "The main differences between the High Closure Inhibition (HiC) and Lower Closure Inhibition (LoC) groups arise from the simultaneous activation of two input nodes in HiC: *ABH1* and *ERA1*. This joint activation regulates cytosolic calcium levels by inactivating the *CaIM* channel, a mechanism absent in the LoC group. *CaIM* inactivation leads to lower calcium influx, which impairs anion effluxing, and blocks stomatal closure.\n", "\n", "An alternative way to inactivate *CaIM* is through membrane depolarization (*Depolar* node active), which occurs in both groups but is stronger in HiC. This depolarization partly depends on increased potassium efflux seen in HiC. Since *CaIM* is inactive, NOS is not activated, reducing NO production, a key inhibitor of potassium efflux. As a result, potassium efflux increases, promoting depolarization. In summary: since this depolarization depends on potassium efflux, which is regulated by NOS/NO production, itself controlled by calcium influx via *CaIM*, and *CaIM* is inhibited by *ABH1* and *ERA1* in HiC, this pathway further amplifies the inhibition of stomatal closure in the HiC group.\n", "\n", "***Overview of the inhibitory pathway in HiC:***\n", "\n", "1.- *ABH1* and *ERA1* inhibit *CaIM*; this axis is missing in the LoC group. \n", "2.- *CaIM* inhibition blocks calcium influx. \n", "3.- Reduced calcium influx inhibits anion efflux. \n", "4.- Reduced anion efflux inhibits stomatal closure. \n", "5.- Reduced calcium influx fails to activate NOS/NO production. \n", "6.- Blockage of NOS/NO production allows potassium efflux. \n", "7.- Potassium efflux enhances membrane depolarization. \n", "8.- Membrane depolarization further inhibits *CaIM*. \n", "\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.11.2" } }, "nbformat": 4, "nbformat_minor": 2 }