BiosimulantBiosimulant
Docs
Search labs...
Sign inGet Started

Chen2006 Endothelial No Release Lab

About lab

Chen2006 Endothelial No Release Lab

This lab asks: Does the endothelial pathway produce nitric oxide?

The lab is composed of three sub-models: a scenario driver, a core SBML simulator solved by Tellurium, and a dedicated viz presenter that turns the raw simulation state into annotated timeseries, ranked response bars, and a plain-language "What Happened" summary. The split keeps the upstream SBML wrapper clean while making the oxygen challenge and interpretation layer explicit.

The core model is Chen2006, Nitric Oxide Release from Endothelial Cells, BioModels BIOMD0000000676, described in the article "Theoretical analysis of biochemical pathways of nitric oxide release from vascular endothelial cells." The bundled scenario asks how the pathway responds when oxygen availability is temporarily reduced.

What You'll See

The lab opens as a canvas with three model nodes wired in series: the scenario driver on the left, the core simulator in the middle, and the visualization sub-model on the right. The default scenario runs for 1 s at a 0.01 s communication step. It holds oxygen at 150 during baseline, drops oxygen to 75 from 0.25 s to 0.75 s, then restores oxygen to 150 for recovery.

After running, the viz node emits four visualizations: an event-annotated absolute timeseries, a baseline-relative response timeseries, a signed response bar chart, and a question-and-answer table titled What Happened that answers Does the endothelial pathway produce nitric oxide? in plain language. The viz node also publishes the table as a structured run_summary record that downstream nodes can consume.

Primary variables shown: the core publishes a curated state record for the visualization, and the viz node presents these concepts with user-friendly labels:

  • Arg
  • Ferric endothelial nitric oxide synthase pool
  • Arginine-bound nitric oxide synthase
  • Reduced enzyme pool
  • Reduced arginine-bound enzyme
  • Nitric-oxide-bound nitric oxide synthase
  • Nitric oxide
  • Reduced nitric-oxide-bound enzyme
  • Hydroxyarginine-bound nitric oxide synthase
  • Hydroxyarginine
  • Reduced hydroxyarginine-bound enzyme
  • Oxygen
  • Oxygen-and-arginine-bound nitric oxide synthase
  • Oxygen-and-hydroxyarginine-bound nitric oxide synthase
  • Citrulline

The first results screen shows the absolute SBML-scale trajectories above a baseline-relative view. The absolute plot preserves the native SBML magnitudes: oxygen is the intentionally perturbed signal, while arginine and enzyme pools remain near their configured scales. The baseline-relative plot is the more useful diagnostic for the pathway response because it reveals smaller species changes that are visually compressed on the absolute scale. In this run, nitric oxide, citrulline, and arginine-bound nitric oxide synthase continue rising after the oxygen challenge begins and remain responsive through recovery.

Chen2006 oxygen challenge absolute and relative results

The second results screen ranks final-minus-baseline changes and then summarizes the run in plain language. The response bar chart shows arginine-bound nitric oxide synthase as the strongest signed response (0.07 native SBML units), followed by citrulline and nitric oxide (0.01 each). The What Happened table records the experiment question, the oxygen availability challenge, 99 recorded time points over 1 s, and the interpretation limit: this is a modelled physiological challenge, not a clinical prediction.

Chen2006 oxygen challenge ranked responses and summary

How the Models Connect

The canvas has three steps:

  1. chen2006_endothelial_no_release_scenario: scenario driver. Emits baseline, challenge, and recovery values for L-arginine, oxygen, nitric oxide synthase pool, arginine-binding rate, and oxygen-binding rate, plus event metadata for the visualization.
  2. chen2006_endothelial_no_release_core: SBML simulator. Receives the scenario-controlled inputs plus generic parameter_overrides and initial_conditions, drives roadrunner, and emits state plus species_labels.
  3. chen2006_endothelial_no_release_viz: visualization sub-model. Consumes state, species_labels, and scenario_metadata, accumulates the per-window history, prettifies the labels, renders the four visuals, and emits the structured run_summary output.

How to Read the Visualizations

The absolute timeseries plot has one curve per selected state variable in the SBML model and marks when the challenge and recovery windows begin. Use it to verify the imposed scenario: in the default run, oxygen drops from 150 to 75 during the challenge interval and returns to 150 at recovery. Other variables are plotted in their native SBML scale, so large pools can hide smaller changes.

The baseline-relative plot rescales each curve against the pre-challenge baseline so pathway responses are visible even when their absolute changes are small. The x-axis is simulation time in seconds. The y-axis is percent change from baseline, so use this panel to compare response direction and timing across nitric oxide, citrulline, arginine-bound NOS, oxygen, and the enzyme pools.

The response bar chart ranks final-minus-baseline changes in native SBML units. In the bundled oxygen challenge, arginine-bound nitric oxide synthase responds most strongly, while citrulline and nitric oxide show smaller positive final changes. The "What Happened" table explains the lab question, the applied challenge, the simulated duration, the strongest response, and the interpretation limits.

What This Lab Contains

  • lab.yaml declares the scenario, core, and viz sub-models, runtime, IO, and wiring.
  • wiring-layout.json places the three nodes on the canvas with the connecting edges.
  • models/scenario/model.yaml describes the schedule driver used for baseline, challenge, and recovery values.
  • models/core/model.yaml describes the SBML simulator package.
  • models/core/src/chen2006_nitric_oxide_release_from_endothelial_c_biomd0000000676_model.py is the SBML wrapper (no visualization code).
  • models/core/data/BIOMD0000000676.xml is the original SBML file from BioModels.
  • models/core/tests/ checks instantiation, output accumulation, and output keys.
  • models/viz/model.yaml describes the visualization sub-model.
  • models/viz/src/chen2006_endothelial_no_release_viz.py consumes core state + labels and renders timeseries, Q&A table, and the run_summary record.
  • models/viz/tests/ exercises the viz with synthetic state inputs (no SBML or roadrunner needed).

Inputs

This lab exposes three public world inputs. The oxygen challenge itself is configured inside the scenario node, not as a public input port.

Public inputs

  • integration_step (s, scalar): override the ODE solver step. Smaller is more precise but slower. Default 0.01.
  • parameter_overrides (record, dict of {parameter_id: value}): apply override values to any SBML global parameter listed in the SBML Parameters table below. Applied before each window.
  • initial_conditions (record, dict of {species_id: value}): override the starting concentration of any species in the SBML Species table below. Applied at setup and on reset.

Scenario-controlled values

The scenario node drives these SBML-facing values internally. In the bundled run, oxygen is the only active challenge variable; the other values remain at baseline during the full run.

InputMeaningDefaultUnit
l_arginineL-arginine availability.100dimensionless
oxygenOxygen availability; drops to 75 during the challenge window, then recovers to 150.150dimensionless
nitric_oxide_synthase_poolFerric endothelial nitric oxide synthase pool.0.015dimensionless
arg_binding_rateArginine binding-rate control.0.1dimensionless
oxygen_binding_rateOxygen binding-rate control.1.89dimensionless

Outputs

  • scenario_metadata (from scenario): scenario name, active challenge input, baseline/challenge/recovery timing, and event markers used by the visualizations.
  • state (from core): a record of every species and state variable in the SBML model at each communication step. Units are mixed; see the SBML file for per-species units.
  • run_summary (from viz): structured Q&A record echoing the rows in the "What Happened" table — {duration_s, point_count, state_variable_count, rows}. Useful for downstream nodes that want to consume the same plain-language summary the user sees in the visualization.

Running in Biosimulant Desktop

Import the lab source folder directly:

biosimulant labs import labs/chen2006-endothelial-no-release

Then open the imported lab and press Run. The results should include the state-variable timeseries and the What Happened Q&A table.

Notes

  • The bundled run uses a baseline plus challenge scenario so the first visualization shows a physiological perturbation without changing the upstream SBML equations.
  • Default run length is 1 s with a 0.01 s communication step. These are conservative defaults chosen by category (single-cell electrophysiology vs whole-system circulation vs slow regulatory loop). Tune them in lab.yaml.
  • Requires tellurium==2.2.11.2. The first import compiles the SBML to LLVM in-process.
  • License: CC0 (from upstream BioModels entry biomodels_ebi:BIOMD0000000676).
  • This wrapper does not modify the upstream biology. To change rates, initial conditions, or kinetic laws, edit the SBML file in models/core/data/BIOMD0000000676.xml directly.

Advanced SBML Identifiers

SBML Parameters

Full list of global parameter IDs, for use with parameter_overrides. Defaults come from the upstream SBML.

Parameter IDNameDefault Value
k1k10.1
k1_primek1_prime0.1
k4k41.89
k4_primek4_prime11.4
SS0
k2k20.91
k14k1453.9
k13k130.033
k8k80.1
k8_primek8_prime0.1
k3k30.91
k9k911.4
k9_primek9_prime1.89
k5k52.58
k5_primek5_prime98
k6k612.6
k7k70.91
k10k103.33
k10_primek10_prime89.9
k11k1129.4
k12k120.91

SBML Species

Full list of species IDs, for use with initial_conditions.

Species IDNameInitial Value
ArgArg100
Fe3__enosFe3+(enos)0.015
Fe3__ArgFe3+_Arg0
Fe2Fe2+0
Fe2__ArgFe2+_Arg0
Fe3__NOFe3+_NO0
NONO0
Fe2__NOFe2+_NO0
Fe3__NOHAFe3+_NOHA0
NOHANOHA0
Fe2__NOHAFe2+_NOHA0
O2O2150
Fe3__O2__ArgFe3+_O2-_Arg0
Fe3__O2__NOHAFe3+_O2-_NOHA0
CitrullineCitrulline0

Two-model lab for Chen2006 Endothelial No Release: a core SBML simulator wired into a dedicated visualization sub-model that turns the raw state into friendly timeseries and a plain-language summary. Chen2006 - Nitric Oxide Release fromEndothelial Cells This model is described in the article: Theoretical analysis of biochemical pathways of nitric oxide release from vascular endothelial cells. It can be used to explore cardiac dynamics and compare response patterns across conditions.

Runtime

Duration1
Comms Step0.01

Runs

Total8
Completed3
Failed5

Metadata

Packagechen2006-endothelial-no-release-lab
Created2026-05-05
Updated2026-05-14
cardiovascularscenariostimulussbmlbiomodels_ebifaithfulvisualization

Manifest

{
  "io": {
    "inputs": [
      {
        "name": "integration_step",
        "maps_to": "chen2006_endothelial_no_release_core.integration_step"
      },
      {
        "name": "parameter_overrides",
        "maps_to": "chen2006_endothelial_no_release_core.parameter_overrides"
      },
      {
        "name": "initial_conditions",
        "maps_to": "chen2006_endothelial_no_release_core.initial_conditions"
      }
    ],
    "outputs": [
      {
        "name": "scenario_metadata",
        "maps_to": "chen2006_endothelial_no_release_scenario.scenario_metadata"
      },
      {
        "name": "state",
        "maps_to": "chen2006_endothelial_no_release_core.state"
      },
      {
        "name": "run_summary",
        "maps_to": "chen2006_endothelial_no_release_viz.run_summary"
      }
    ]
  },
  "title": "Chen2006 Endothelial No Release Lab",
  "models": [
    {
      "path": "owned/models/chen2006_endothelial_no_release_scenario",
      "alias": "chen2006_endothelial_no_release_scenario",
      "parameters": {
        "schedule": {
          "oxygen": {
            "unit": "dimensionless",
            "label": "oxygen",
            "active": true,
            "baseline": 150,
            "recovery": 150,
            "challenge": 75,
            "description": "Scenario-controlled oxygen value."
          },
          "l_arginine": {
            "unit": "dimensionless",
            "label": "l arginine",
            "active": false,
            "baseline": 100,
            "recovery": 100,
            "challenge": 100,
            "description": "Scenario-controlled l arginine value."
          },
          "arg_binding_rate": {
            "unit": "dimensionless",
            "label": "arg binding rate",
            "active": false,
            "baseline": 0.1,
            "recovery": 0.1,
            "challenge": 0.1,
            "description": "Scenario-controlled arg binding rate value."
          },
          "oxygen_binding_rate": {
            "unit": "dimensionless",
            "label": "oxygen binding rate",
            "active": false,
            "baseline": 1.89,
            "recovery": 1.89,
            "challenge": 1.89,
            "description": "Scenario-controlled oxygen binding rate value."
          },
          "nitric_oxide_synthase_pool": {
            "unit": "dimensionless",
            "label": "nitric oxide synthase pool",
            "active": false,
            "baseline": 0.015,
            "recovery": 0.015,
            "challenge": 0.015,
            "description": "Scenario-controlled nitric oxide synthase pool value."
          }
        },
        "scenario_name": "Oxygen availability challenge",
        "baseline_until": 0.25,
        "challenge_until": 0.75,
        "scenario_description": "Baseline is followed by a oxygen challenge and recovery period."
      },
      "provenance": {
        "owned_path": "owned/models/chen2006_endothelial_no_release_scenario"
      }
    },
    {
      "path": "owned/models/chen2006_endothelial_no_release_core",
      "alias": "chen2006_endothelial_no_release_core",
      "parameters": {
        "model_path": "data/BIOMD0000000676.xml",
        "integration_step": 0.01
      },
      "provenance": {
        "owned_path": "owned/models/chen2006_endothelial_no_release_core"
      }
    },
    {
      "path": "owned/models/chen2006_endothelial_no_release_viz",
      "alias": "chen2006_endothelial_no_release_viz",
      "parameters": {
        "lab_title": "Chen2006 Endothelial No Release",
        "lab_question": "Does the endothelial pathway produce nitric oxide?",
        "integration_step": 0.01
      },
      "provenance": {
        "owned_path": "owned/models/chen2006_endothelial_no_release_viz"
      }
    }
  ],
  "wiring": [
    {
      "to": [
        "chen2006_endothelial_no_release_core.l_arginine"
      ],
      "from": "chen2006_endothelial_no_release_scenario.l_arginine"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_core.oxygen"
      ],
      "from": "chen2006_endothelial_no_release_scenario.oxygen"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_core.nitric_oxide_synthase_pool"
      ],
      "from": "chen2006_endothelial_no_release_scenario.nitric_oxide_synthase_pool"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_core.arg_binding_rate"
      ],
      "from": "chen2006_endothelial_no_release_scenario.arg_binding_rate"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_core.oxygen_binding_rate"
      ],
      "from": "chen2006_endothelial_no_release_scenario.oxygen_binding_rate"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_viz.scenario_metadata"
      ],
      "from": "chen2006_endothelial_no_release_scenario.scenario_metadata"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_viz.state"
      ],
      "from": "chen2006_endothelial_no_release_core.state"
    },
    {
      "to": [
        "chen2006_endothelial_no_release_viz.species_labels"
      ],
      "from": "chen2006_endothelial_no_release_core.species_labels"
    }
  ],
  "runtime": {
    "duration": 1,
    "initial_inputs": {
      "chen2006_endothelial_no_release_core": {
        "integration_step": 0.01,
        "initial_conditions": {
          "payload": {}
        },
        "parameter_overrides": {
          "payload": {}
        }
      }
    },
    "communication_step": 0.01
  },
  "description": "Two-model lab for Chen2006 Endothelial No Release: a core SBML simulator wired into a dedicated visualization sub-model that turns the raw state into friendly timeseries and a plain-language summary. Chen2006 - Nitric Oxide Release fromEndothelial Cells This model is described in the article: Theoretical analysis of biochemical pathways of nitric oxide release from vascular endothelial cells. It can be used to explore cardiac dynamics and compare response patterns across conditions.",
  "schema_version": "2.0"
}

Sign in to start your own run. Public-lab history stays visible here.

Python error: 'RoadRunnerCompat' object does not support item assignment
Logs

No logs yet.