Multiscale simulation of multi-cellular system
Overview:
PhysiBoSS (PhysiCell-MaBoSS) is C++ software for multiscale simulation of heterogeneous multi-cellular system. It integrates together cell's internal signalling pathway model (boolean formalism), physical representation of cell (agent-based) and extra-cellular matrix diffusing or fixed entities. It is adapted from PhysiCell sources, with the boolean network computation inside each cell from MaBoSS software.
Code-oriented documentation can be generated with Doxygen:
make doc
in the main directory. It can be configured in the Doxyfile file present in this directory. It will generate the html documentation in the doc/html directory. You can visualize it in a browser, e.g.:
firefox doc/html/index.html &
You can also refer to (future) publications with PhysiBoSS for scientific applications of this software and description of the models.
Step-by-step examples with the necessary files to run them are also proposed in the 'examples' directory and on the Wiki of this repository.
PhysiBoSS should run and be easily installed on Linux and MacOS system. We also provide a Docker image of PhysiBoSS that can be used if it cannot be installed in your machine.
It requires moderatly recent version of C++ (at least c++11) and OpenMP support. Compilation of MaBoSS library requires flex
and bison
library, usually already present (and can be easily installed on e.g. Linux ubuntu with sudo apt-get install bison flex
).
To install it on Linux system, from a Terminal:
Clone the repository on your local machine, and go inside the main directory. Type make install
, which will install and compile MaBoSS then PhysiBoSS. The executables will be created in the 'bin' directory if all goes well.
It can be compiled in 'Debug', 'Release' or 'Proliling' modes, to set in the 'Makefile' file. Default is 'Release' mode (fastest).
You might also have to change your c++ compiler in the Makefile according to your operating system.
Commands list:
git clone https://github.com/gletort/PhysiBoSS.git
cd PhysiBoSS
make install
If errors happened during the compilation, please refer to the installation page.
To run a simulation, you need (at least) a XML parameter file indicating the conditions of the simulation, and the networks file (you can find some on MaBoSS website and on our logical modelling pipeline repository). Other options are possible, cf the code-documentation or this repository wiki for more informations.
Example of a parameter file (with only few parameters shown):
<?xml version="1.0" encoding="UTF-8" ?>
<simulation>
<time_step> 0.2 </time_step>
<mechanics_time_step> 0.1 </mechanics_time_step>
....
</simulation>
<cell_properties>
<mode_motility> 1 </mode_motility>
<polarity_coefficient> 0.5 </polarity_coefficient>
...
</cell_properties>
<network>
<network_update_step> 10 </network_update_step>
...
</network>
<initial_configuration>
<load_cells_from_file> init.txt </load_cells_from_file>
...
</initial_configuration>
To visualize graphically the result of a simulation, with use the software Paraview (or you can also generate a .svg
snapshot of the simulation). Analysis of the result files were done with python scripts proposed in this directory. For documentation on how to use Paraview to set-up the rendering of PhysiBoSS outputs, see here, with the explication on how to draw spheres from a set of points (x, y, z, radius).
For PhysiCell:
- Paul Macklin's lab website
- PhysiCell publication: A. Ghaffarizadeh, S.H. Friedman, S.M. Mumenthaler, and P. Macklin, PhysiCell: an Open Source Physics-Based Cell Simulator for 3-D Multicellular Systems, bioRxiv 088773, 2016. DOI: 10.1101/088773.
- BioFVM website
- BioFVM publication: A. Ghaffarizadeh, S.H. Friedman, and P. Macklin. BioFVM: an efficient, parallelized diffusive transport solver for 3-D biological simulations. Bioinformatics, 2015.
- MaBoSS website
- MaBoSS publication: Stoll G, Viara E, Barillot E, Calzone L. Continuous time Boolean modeling for biological signaling: application of Gillespie algorithm. BMC Syst Biol. 2012 Aug 29;6:116. doi: 10.1186/1752-0509-6-116.
- PhysiBoSS publication: Letort G, Montagud A, Stoll G, Heiland R, Barillot E, Macklin P, Zinovyev A, Calzone L . PhysiBoSS: a multi-scale agent-based modelling framework integrating physical dimension and cell signalling. Bioinformatics, bty766, doi:10.1093/bioinformatics/bty766
For MaBoSS:
For PhysiBoSS:
Please, refer to the documentation section of this repository for a much more extended description, with step by step examples instructions.
PhysiCell is developed in Paul Macklin's lab at Indiana University (Bloomington, USA). MaBoSS and PhysiBoSS are developed in the Computational Systems Biology of Cancer group at Institut Curie (Paris, France).
We invite you to use PhysiBoSS for you research and give feedbacks to us. Any help in developing it further is more than welcome. Do not hesitate to contact us for any comments or difficulties in using PhysiBoSS: physiboss@gmail.com.
This repository can be referred to with its own DOI:
Wishing you to enjoy using PhysiBoSS,
PhysiBoSS's team.