Run provenance  ·  vivarium-collective/v2ecoli ↗  ·  2026-04-16 08:08:24 EDT  ·  merge-v2parca@f79637a [uncommitted changes]  ·  eranagmon@LT-0919936  ·  Darwin 24.2.0 arm64 (16 cores)  ·  Python 3.12.9

v2ecoli Simulation Report

2026-04-16 08:08 · Simulation pipeline · process-bigraph Composite.run()

v2ecoli is a whole-cell E. coli model running natively on process-bigraph. This report covers the simulation phase: building the online model from a pre-fitted sim_data, running a single cell to division, and continuing into daughter simulations.

The upstream ParCa (Parameter Calculator) that produces sim_data from the raw knowledge base is covered in the separate ParCa Workflow Report.

sim_data source: Loaded from a prior workflow run (out/workflow/simData.cPickle)  ·  Cache: out/workflow/cache (27 process configs, 16,321 bulk molecules)  ·  ParCa Workflow Report →

1. Load Model cached 2026-04-16 08:02:57

Build Time
1.07s
Steps
46
Processes
1
Bulk Molecules
16,321
Unique Types
11
Initial Dry Mass
380.8 fg

2. Single Cell Simulation + v1 Comparison (37 min) cached 2026-04-16 08:05:48

Sim Duration
2200s
Wall Time
169.7s
Sim/Wall
13.0x
Bulk Changed
4182
Dry Mass
695.6 fg
Division
Reached
Chromosome State
Growth Metrics
ppGpp Dynamics

Single Cell Summary

Metric Value
Sim duration 2200s
Wall time 170s
Speed (sim/wall) 13.0x
Final dry mass 695.6 fg
Division reached Yes
Snapshots 45

3. Division cached 2026-04-16 08:05:51

How Division Works

The Division step uses process-bigraph's native _add/_remove structural updates. When division is triggered (dry mass ≥ threshold with ≥ 2 chromosomes):

  1. State splittingdivide_cell() partitions the mother cell's state:
    • Bulk molecules: binomial distribution (p=0.5) on each molecule's count
    • Chromosomes: alternating assignment (even→D1, odd→D2) with descendant domain tracking
    • Chromosome-attached molecules: follow their domain
    • RNAs: full transcripts binomial, partial transcripts follow RNAP domain
    • Ribosomes: follow their mRNA
  2. Daughter cell constructionbuild_document_from_configs() builds complete cell states with fresh process instances from the divided initial state + cached configs

Division Test Results

Tests run on pre-division state (t=2150s, 2 chromosomes, dry mass 703 fg).

Bulk Conserved
Yes
Mother Bulk
55,346,078,233
D1 Bulk
27,672,921,002
D2 Bulk
27,673,157,231
State Split
12 ms
Daughter Build
0.2s
Daughter Viable
Yes
Unique Molecule Conservation
MoleculeMother (active)Daughter 1Daughter 2Conserved
full_chromosome2 11 Yes
oriC4 22 Yes
chromosome_domain7 33 No
active_replisome4 22 Yes
promoter8364 41824182 Yes
gene11622 58115811 Yes
DnaA_box812 406406 Yes
active_RNAP1447 722725 Yes
RNA7692 38183874 Yes
chromosomal_segment0 00 Yes
active_ribosome25556 1263112925 Yes

4. Daughter Simulations cached 2026-04-16 08:08:23

Two daughter cells from the pre-division state, each run for 1100s (approximately half a generation).

Daughter 1

Wall Time
76s
Initial Dry Mass
351 fg
Final Dry Mass
466 fg
Fold Change
1.33x

Daughter 2

Wall Time
75s
Initial Dry Mass
352 fg
Final Dry Mass
463 fg
Fold Change
1.32x
Daughters Mass

7. Process-Bigraph Network

Interactive Cytoscape.js viewer of the composite — stores on the left, processes on the right, sorted by execution layer. Click a node for math, ports, config; switch layouts from the dropdown. Full-screen viewer: network.html.

8. ParCa Composition Diagram

Interactive Cytoscape.js view of the upstream ParCa 9-Step pipeline that produces sim_data from the raw knowledge base. Stores on the left, Steps on the right; click a node for ports, class, and docstring. Full-screen viewer: parca_network.html · details: ParCa Workflow Report →

Timing Summary

StepWall TimeSim TimeSpeed
Model build1.07s
Single cell (to division)169.7s2200s13.0x realtime
Division split0.012s
Daughter simulations151.3s2200s (2x1100s)14.5x realtime
Total322s4400s