pyCellModeller is a clean-slate reimplementation of CellModeller focused on a Torch-native simulation core.
For bootstrap v1, the product is intentionally narrow: a deterministic CPU-first engine with a minimal public API and native tutorial semantics.
Legacy PyOpenCL/OpenCL execution paths are intentionally retired for this rewrite.
- v1 backend strategy: Torch-only
- no CL/OpenCL naming in public APIs
- no compatibility shims unless explicitly requested
- no multi-backend architecture in bootstrap scope
- Developers establishing the simulation core architecture
- Researchers validating deterministic stepping behavior
- Contributors building future mechanics/biology/fields modules on a tested foundation
Users can currently:
- install the package scaffold
- import stable top-level API symbols
- initialize a deterministic toy state
- run deterministic CPU stepping
- run unit/integration/regression tests for the implemented path
pycellmodeller.Simulationpycellmodeller.SimulationConfigpycellmodeller.SimulationState
Supported flow:
- build config
- create simulation
- initialize example state
- step simulation deterministically
- CPU-first deterministic behavior as reference
- torch tensor state model
- minimal stepping kernel (
x <- x + v*dt) - documentation and tests that match actual implementation
- milestone progression toward native tutorial examples
- production mechanics models
- extracellular field simulation
- biological rule engine
- persistence/export workflows
- rich CLI workflows
- visualization module (
vizdirectory not present) - repository
docs/anddocker/directories (not present)
This stage is successful if:
- documented API matches what imports and runs
- deterministic CPU stepping remains stable under tests
- architecture stays clean for future mechanics/fields/biology additions
- a native pyCellModeller Tutorial 1 equivalent runs with semantic parity
- success does not depend on executing legacy tutorial files unchanged