Skip to content
PhysiCell: Scientist end users should use latest release! Bugfixes should be submitted to the development branch.
C++ MATLAB Makefile Python POV-Ray SDL
Branch: master
Clone or download
Latest commit bccb5f8 Aug 20, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
BioFVM cleanup Aug 18, 2019
beta cells properly sized Jun 11, 2019
config cleanup Aug 20, 2019
core version numbers Aug 17, 2019
custom_modules cleanup Aug 18, 2019
documentation more updates to user guide. Aug 20, 2019
examples removing version numbers from source files Sep 17, 2018
licenses cleanup Feb 23, 2018
matlab removing version numbers from source files Sep 17, 2018
modules cleanup Aug 18, 2019
output cleanup Aug 18, 2019
povray Version 1.2.1 Nov 3, 2017
protocols followed 1.5.2 release protocol Jun 11, 2019
sample_projects cleanup Aug 20, 2019
tests test custom_data Jan 21, 2019
unit_tests/substrate_internalization more fixes May 1, 2019
.gitignore some cleanup Aug 17, 2019
CITATION.txt Create CITATION.txt Aug 20, 2019
Makefile cleanup Aug 18, 2019
Quickstart.pdf Add files via upload Feb 21, 2018
README.md docs Aug 20, 2019
VERSION.txt version numbers Aug 17, 2019
changes.md docs Aug 20, 2019

README.md

PhysiCell: an Open Source Physics-Based Cell Simulator for 3-D Multicellular Systems.

Version: 1.6.0

Release date: 20 August 2019

Overview:

PhysiCell is a flexible open source framework for building agent-based multicellular models in 3-D tissue environments.

Reference: A Ghaffarizadeh, R Heiland, SH Friedman, SM Mumenthaler, and P Macklin, PhysiCell: an Open Source Physics-Based Cell Simulator for Multicellular Systems, PLoS Comput. Biol. 14(2): e1005991, 2018. DOI: 10.1371/journal.pcbi.1005991

Visit http://MathCancer.org/blog for the latest tutorials and help.

Notable recognition:

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 virus-macrophage-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.md for the full change log.


Release summary:

This release introduces a new XML-based configuration for the chemical microenvironment. All the sample projects have been updated to use this new functionality. There is no change in APIs or high-level usage / syntax for end users; old projects should continue to work without modification, although we highly recommend migrating to the simplified microenvironment setup. A short blog tutorial on this new functionality can be found at

http://mathcancer.org/blog/setting-up-the-physicell-microenvironment-with-xml

NOTE: OSX users must now define PHYSICELL_CPP system variable. See the documentation.

Major new features and changes:

  • XML-based setup of the chemical microenvironment.

Minor new features and changes:

  • Updated template2D sample project:

    • Refined "reset" and "data-cleanup" rules in Makefile
    • Converted project to use the new XML-based microenvironment setup.
  • Updated template3D sample project:

    • Refined "reset" and "data-cleanup" rules in Makefile
    • Converted project to use the new XML-based microenvironment setup.
  • Updated heterogeneity sample project:

    • Refined "reset" and "data-cleanup" rules in Makefile
    • Converted project to use the new XML-based microenvironment setup.
  • Updated cancer immune sample rpoject:

    • Refined "reset" and "data-cleanup" rules in Makefile
    • Converted project to use the new XML-based microenvironment setup.
  • Updated virus macrophage sample project:

    • Refined "reset" and "data-cleanup" rules in Makefile
    • Converted project to use the new XML-based microenvironment setup.
    • Enabled gradient calculations (were previously off, although we wanted macrophage chemotaxis)
  • Updated biorobots sample project:

    • Refined "reset" and "data-cleanup" rules in Makefile.
    • Converted project to use the new XML-based microenvironment setup.
    • Note that values in user_parameters will override values in microenvironment_setup.
    • Improved project to properly search for substrate indices instead of hard coding them.
  • Updated cancer biorobots sample project:

    • Refined "reset" rule in Makefile.
    • Converted project to use the new XML-based microenvironment setup.
    • Improved project to properly search for substrate indices instead of hard coding them.
  • Refined "reset" and "data-cleanup" rules in default Makefile

  • Created new function to access the (private) microenvironment dirichlet_activation_vector:

double Microenvironment::get_substrate_dirichlet_activation( int substrate_index );

  • Updated the main microenvironment display function Microenvironment::display_information to summarize the initial and boundary conditions for each substrate

  • Wrote two new functions to parse the XML in microenvironment_setup to add substrates and options:

    • bool setup_microenvironment_from_XML( pugi::xml_node root_node )
    • bool setup_microenvironment_from_XML( void ) The second one assumes you already defined the root node and access the global (pugi)xml node for it.
  • The main XML parsing function now calls setup_microenvironment_from_XML(), just before processing user-defined parameters.

Beta features (not fully supported):

  • anim_svg.py - now plots correctly sized cells; manually step via arrow keys

  • anim_svg_cycle.py - same as above, but automatically cycles through .svg files

Bugfixes:

  • None.

Notices for intended changes that may affect backwards compatibility:

  • We intend to merge Custom_Variable and Custom_Vector_Variable in the very near future.

  • We may change the role of operator() and operator[] in Custom_Variable to more closely mirror the functionality in Parameters.

  • We will introduce improvements to placement of daughter cells after division.

  • Some search functions (e.g., to find a substrate or a custom variable) will start to return -1 if no matches are found, rather than 0.

Planned future improvements:

  • Further XML-based simulation setup.

  • 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

  • integrate Boolean network support from PhysiBoSS into the mainline code (See http://dx.doi.org/10.1093/bioinformatics/bty766. )

  • Develop contact-based cell-cell interactions.

  • Add cell differentiation functionality to Phenotype, to be executed during cell division events.

  • Add a new standard phenotype function that uses mechanobiology, where high pressure can arrest cycle progression. (See https://twitter.com/MathCancer/status/1022555441518338048.)

  • Add module for standardized pharmacodynamics, as prototyped in the nanobio project. (See https://nanohub.org/resources/pc4nanobio.)

  • 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)

  • improved plotting options in SVG


You can’t perform that action at this time.