Three 3D reaction-diffusion simulations wrapped as
process-bigraph Processes, with the native VCell
pyvcell-fvsolver finite volume PDE kernel producing the
spatial fields. The 3D viewers embedded below are
PyVista + vtk.js scenes — the same rendering stack
used by pyvcell's built-in trame widget — exported as self-contained
interactive HTML.
Single-species diffusion from a point source
A Gaussian concentration pulse of species A centered at the middle of the cubic domain diffuses outward under Fick's law. No reactions — a pure diffusion benchmark of the VCell finite volume PDE solver. The peak concentration decays while the distribution spreads uniformly over the domain.
compartment ec; compartment cell; species A in cell; A = 0
| Species | Initial concentration (µM) | Diff. coef. (µm²/s) |
|---|---|---|
| A | 50 * exp(-((x-5)^2 + (y-5)^2 + (z-5)^2) / 1.5) | 1 |
| Domain extent | 10 × 10 × 10 µm |
| Voxel grid | 22 × 22 × 22 (10,648 cells) |
| Voxel size | 0.455 × 0.455 × 0.455 µm |
| Duration | 8.0 s |
| Output step | 0.4 s |
| Compartment | cell |
A → B → C with distinct diffusion coefficients
A linear reaction cascade: A decays into B, which decays into C. All three species diffuse but with very different coefficients (A slow, B medium, C fast). The wrapper drives VCell's finite volume PDE solver to couple first-order kinetics with Fickian transport across a 3D Cartesian mesh, producing three distinct spatial profiles that emerge and decay in sequence.
compartment ec; compartment cell; species A in cell; species B in cell; species C in cell; J1: A -> B; k1*A J2: B -> C; k2*B k1 = 0.6 k2 = 0.3 A = 0 B = 0 C = 0
| Species | Initial concentration (µM) | Diff. coef. (µm²/s) |
|---|---|---|
| A | 30 * exp(-((x-5)^2 + (y-5)^2 + (z-5)^2) / 2.0) | 0.2 |
| B | 0.0 | 0.6 |
| C | 0.0 | 1.2 |
| Domain extent | 10 × 10 × 10 µm |
| Voxel grid | 22 × 22 × 22 (10,648 cells) |
| Voxel size | 0.455 × 0.455 × 0.455 µm |
| Duration | 6.0 s |
| Output step | 0.3 s |
| Compartment | cell |
Opposing diffusion fronts with a binding reaction
Two Gaussian sources of species A and species B sit on opposite corners of the cubic domain. As both diffuse inward they collide in the middle where a bimolecular association reaction A + B -> C traps product along the interface. The VCell finite volume solver handles the coupled transport and nonlinear reaction across the 3D mesh.
compartment ec; compartment cell; species A in cell; species B in cell; species C in cell; J1: A + B -> C; k1*A*B k1 = 1.5 A = 0 B = 0 C = 0
| Species | Initial concentration (µM) | Diff. coef. (µm²/s) |
|---|---|---|
| A | 40 * exp(-((x-2)^2 + (y-2)^2 + (z-2)^2) / 1.5) | 0.6 |
| B | 40 * exp(-((x-8)^2 + (y-8)^2 + (z-8)^2) / 1.5) | 0.6 |
| C | 0.0 | 0.1 |
| Domain extent | 10 × 10 × 10 µm |
| Voxel grid | 22 × 22 × 22 (10,648 cells) |
| Voxel size | 0.455 × 0.455 × 0.455 µm |
| Duration | 6.0 s |
| Output step | 0.3 s |
| Compartment | cell |