PhysiCell: an open source physics-based cell simulator
Project goals Back to top
PhysiCell aims to provide a robust, scalable code for simulating large systems of cells in 3-D tissues on standard desktop computers. Among our design goals:
- Scalable: Capable of simulating at least 500,000 cells on modern quad-core desktops.
- Physics-based: Cells are not constrained by lattice positions, but instead move according to biomechanical forces. Cells change fluid and solid (biomass) volumes according to physical processes.
- Calibration to digital cell lines: We will be able to read MultiCellDS-formatted digital cell lines to initialize cell phenotypes and their sensitivities to the microenvironment.
- Calibration by snapshots: Reading in a simulation snapshot (or in the future, a properly-annotated experimental/clinical image) will arrange cells and configure the tissues.
- Realistic cell cycle: Cells go through G0/G1, S, G2, and M phases, along with realistic rates of volumetric growth.
- Realistic apoptosis: Apoptotic cell death includes volume loss rates and adhesive changes to mimic experimental observations.
- Realistic necrosis: Necrotic cell death includes volume loss rates and adhesive changes to mimic early cell swelling, lysis, pyknosis, calcification (where appropriate, such as ductal carcinoma in situ), and other in vivo observations.
- Microenvironment coupling: Cell cycle progression, apoptosis, and necrosis are all microenvironment-dependent. We use BioFVM for the microenvironment modeling.
- Heterogeneity: Cells choose their phenotypic parameters according to the ranges indicated in their digital cell lines. If heterogeneity has been experimentally recorded, it will be reproduced in the cells.
- Open source and cross-platform compatible: Use standard, compliant C++ (targeting GCC and Intel C++ Compiler) with minimal external dependencies.
- Iterative progress: The first release will focus on getting good performance with reasonable accuracy; later releases will improve accuracy, increase performance, and add new capabilities. We prefer to release "good enough" code and improve it iteratively, than to wait (possibly indefinitely) for "perfect" code. (Perfect is the enemy of good.)
Method, accuracy, and performance Back to top
Screenshots and examples Back to top
Coming soon ...
Licensing and disclaimers Back to top
PhysiCell is an academic/scientific code, and it should not be used as the basis for individual medical decisions. (That's what peer review, clinical trials, and FDA oversight are for!) Always consult your physician when making medical decisions.
Downloads Back to top
PhysiCell is still undergoing internal code testing, cleanup, and documentation. It will later be available on SourceForge.
Support Back to top
For support, please contact Paul Macklin.
If you plan to use PhysiCell in a grant proposal, please consider including Paul Macklin as a consultant for more dedicated support.
Development Roadmap Back to top
How to Cite PhysiCell Back to top
For now, please reference PhysiCell by the project website at PhysiCell.MathCancer.org. We will update this citation information once PhysiCell has been submitted for publication.
You can also cite an earlier (2-D) version of the model by our 2012 paper in the Journal of Theoretical Biology:
P. Macklin, M.E. Edgerton, A.M. Thompson, and V. Cristini. Patient-calibrated agent-based modelling of ductal carcinoma in situ (DCIS): From microscopic measurements to macroscopic predictions of clinical progression. J. Theor. Biol. 301:122-40, 2012. DOI: 10.1016/j.jtbi.2012.02.002.
Some Publications and Projects that cite PhysiCell
Nothing just yet. :-)
Additional topics Back to top
- BioFVM: Our lab's finite volume solver for biological problems.
Link: More information is available here.
- MultiCellDS: PhysiCell will use the MultiCellDS data format once released.
As the first major continuum code to commit to the standard, our data structures
should influence the structuring of cell data elements in the standard.