Version 1.2.2
PhysiCell: an Open Source Physics-Based Cell Simulator for 3-D Multicellular Systems.
Version: 1.2.2
Release date: 4 November 2017
Overview:
PhysiCell is a flexible open source framework for building agent-based multicellular models in 3-D tissue environments.
Reference: Ghaffarizadeh et al., PLoS Comput Biol (2017)
preprint URL: https://doi.org/10.1101/088773
Visit http://MathCancer.org/blog for the latest tutorials and help.
Key makefile rules:
make : compiles the current project. If no project has been defined, it first populates the cancer heterogeneity 2D sample project and compiles it
make [project-name] : populates the indicated sample project. Use "make" to compile it.
[project_name] choices:
template2D
template3D
biorobots-sample
cancer-biorobots-sample
heterogeneity-sample
cancer-immune-sample
make clean : removes all .o files and the executable, so that the next "make" recompiles the entire project
make data-cleanup : clears out all simulation data
make reset : de-populates the sample project and returns to the original PhysiCell state. Use this when switching to a new PhysiCell sample project.
Homepage: http://PhysiCell.MathCancer.org
Downloads: http://PhysiCell.sf.net
Support: https://sourceforge.net/p/physicell/tickets/
Quick Start: Look at QuickStart.pdf in the documentation folder.
User Guide: Look at UserGuide.pdf in the documentation folder.
Tutorials: http://www.mathcancer.org/blog/physicell-tutorials/
Latest info: follow @MathCancer on Twitter (http://twitter.com/MathCancer)
See changes.txt for the full change log.
Summary:
This release reduces the complexity of Makefiles (especially for OSX users), restructures the 2D and 3D project templates as sample projects, fixes a minor bug in SVG pathology outputs, improves copying of Cell_Definitions, and fixes minor bugs in BioFVM (primarily related to Dirichlet conditions).
NOTE: OSX users must now define PHYSICELL_CPP system variable. See the documentation.
PhysiCell is currently under scientific peer review.
Major new features and changes:
- none
Minor new features and changes:
-
Restructured the 2D template project to have the same structure as a
typical project, with setup functions related functions in
./custom_modules/*, etc. Moved it to ./sample_projects/template2D/
./template_projects/ will be deprecated.To populate this project, use:
make template2D
To compile:
make
To de-populate the sample project and return to the "clean"PhysiCell state:
make reset
make clean (to remove object files) -
Restructured the 3D template project to have the same structure as a
typical project, with setup functions related functions in
./custom_modules/*, etc. Moved it to ./sample_projects/template3D/
./template_projects/ will be deprecated.To populate this project, use:
make template3D
To compile:
make
To de-populate the sample project and return to the "clean"PhysiCell state:
make reset
make clean (to remove object files) -
Simplified Makefiles: populating a sample project and compiling it
make <sample_project>
To compile:
make
To reset to original state:
make reset
Current <sample_project> values:
template2D
template3D
biorobots-sample
cancer-biorobots-sample
heterogeneity-sample
cancer-immune-sample -
Simplified Makefiles: Makefiles check for system variable
PHYSICELL_CPP to set the compiler (CC). OSX users must set
this environment variables. See the online tutorials and the
user guide. -
Simplified Makefiles: "make data-cleanup" removes .svg, .mat, .xml, and
data inside ./data -
Updated documentation on how to add new substrates.
-
Updated documentation on applying Dirichlet conditions to only
specific substrates. -
Added new function to copy the properties of a Cell Definition to
the cell.void Cell::convert_to_cell_definition( Cell_Definition& cd )
Bugfixes:
-
Fixed a small error in SVG plots, where tissues were flipped with
y was vertically flipped. -
Used register_microenvironment(Microenvironment*) to improve
compatibiltiy with other operating systems and compilers. -
Added copy constructor and copy assignnment functions to the
Cell_Definition is. -
Removed the unnecessary "wha???" from BioFVM_microenvironment.cpp.
-
Updated Dirichlet_condition_vector = ones (instead of zeros) in
Microenvironment_Options::Microenvironment_Options() default
constructor. -
Microenvironment::resize_densities( int new_size ) no longer
overwrites previous dirichlet values when extending the size. -
No longer overwrites existing Dirichlet_condition_vector elements
or set default_microenvironment_options.use_oxygen_as_first_field
to false. -
Microenvironment::set_density(int,std::string,std::string) and
Microenvironment::set_density(int,std::string,std::string,double,double)
were modified to be compatibility. -
Only set default_microenvironment_options.use_oxygen_as_first_field = false
if index = 0, when samplign the oxygen. -
Updated save_PhysiCell_to_MultiCellDS_xml_pugi() to save much more
phenotype information and all custom variables for each cell. -
Updated read_MultiCellDS_XML.m (in ./matlab) to read these
newly expanded data files. -
Includes a sneak preview of BioFVM 1.1.7, which includes bugfixes
mentioned above.
Notices for intended changes that may affect backwards compatibility:
- None at this time
Planned future improvements:
-
parse XML configuration files
-
read saved simulation states (as MultiCellDS digital snapshots)
-
"mainline" prototype cell attach/detach mechanics as standard models
(currently in the biorobots and immune examples) -
integrate SBML-encoded systems of ODEs as custom data and functions
for molecular-scale modeling -
create an angiogenesis sample project
-
create a small library of angiogenesis and vascularization codes as
an optional standard module in ./modules (but not as a core component)