From c783d6c8a6182ecc22a648f54e737bfdc4e57b8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vincent=20No=C3=ABl?= Date: Mon, 31 Jul 2023 16:09:48 +0200 Subject: [PATCH 01/33] Renaming PhysiMeSS default example --- .../physimess/config/{mymodel.xml => PhysiCell_settings.xml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename sample_projects/physimess/config/{mymodel.xml => PhysiCell_settings.xml} (100%) diff --git a/sample_projects/physimess/config/mymodel.xml b/sample_projects/physimess/config/PhysiCell_settings.xml similarity index 100% rename from sample_projects/physimess/config/mymodel.xml rename to sample_projects/physimess/config/PhysiCell_settings.xml From 0a38c161f75b465be116a5419711163ba526c92c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vincent=20No=C3=ABl?= Date: Mon, 31 Jul 2023 16:28:47 +0200 Subject: [PATCH 02/33] Updated tests in actions --- .github/workflows/test-macosx.yml | 2 +- .github/workflows/test-ubuntu.yml | 2 +- .github/workflows/test-windows.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-macosx.yml b/.github/workflows/test-macosx.yml index ed9830771..f1e7581c1 100644 --- a/.github/workflows/test-macosx.yml +++ b/.github/workflows/test-macosx.yml @@ -63,7 +63,7 @@ jobs: - name: Run PhysiMeSS project run: | - ./project config/mymodel.xml + ./project ./project config/Fibre_Initialisation/mymodel_initialisation.xml ./project config/Cell_Fibre_Mechanics/mymodel_rotating.xml \ No newline at end of file diff --git a/.github/workflows/test-ubuntu.yml b/.github/workflows/test-ubuntu.yml index fdb2a11f3..a15764a15 100644 --- a/.github/workflows/test-ubuntu.yml +++ b/.github/workflows/test-ubuntu.yml @@ -44,7 +44,7 @@ jobs: - name: Run PhysiMeSS project run: | - ./project config/mymodel.xml + ./project ./project config/Fibre_Initialisation/mymodel_initialisation.xml ./project config/Cell_Fibre_Mechanics/mymodel_rotating.xml \ No newline at end of file diff --git a/.github/workflows/test-windows.yml b/.github/workflows/test-windows.yml index e345e2098..366542847 100644 --- a/.github/workflows/test-windows.yml +++ b/.github/workflows/test-windows.yml @@ -50,7 +50,7 @@ jobs: - name: Run PhysiMeSS project run: | - .\\project config\\mymodel.xml + .\\project .\\project config\\Fibre_Initialisation\\mymodel_initialisation.xml .\\project config\\Cell_Fibre_Mechanics\\mymodel_rotating.xml \ No newline at end of file From fa7a858aaa9452af753022e0b6ac298962ab3eaf Mon Sep 17 00:00:00 2001 From: Randy Heiland Date: Mon, 31 Jul 2023 11:41:17 -0400 Subject: [PATCH 03/33] improve libRR script --- beta/setup_libroadrunner.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/beta/setup_libroadrunner.py b/beta/setup_libroadrunner.py index 4f3156b8b..bf6148f06 100644 --- a/beta/setup_libroadrunner.py +++ b/beta/setup_libroadrunner.py @@ -27,12 +27,24 @@ def reminder_dynamic_link_path_linux(): print("\n* To make this permanent, add this line to the bottom of the respective shell startup file, e.g., .bashrc, .bash_profile, or .zshenv in your home directory.") print("\n!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n") -if os.path.exists(os.path.join(os.path.dirname(os.path.dirname(__file__)), "addons", "libRoadrunner", "roadrunner")): +os_type = platform.system() + +# Old: +# if os.path.exists(os.path.join(os.path.dirname(os.path.dirname(__file__)), "addons", "libRoadrunner", "roadrunner")): + +# New: July 2023 - trying to be smarter about deciding whether to (re)download libRR +# NOTE: needs to be tested cross-platform! +if os.path.exists(os.path.join(os.path.dirname(os.path.dirname(__file__)), "addons", "libRoadrunner", "roadrunner","include","rr","C","rrc_api.h")): print('\nlibroadrunner already installed.\n') + # regardless, let's remind the user about the env var requirement! + if os_type.lower() == 'darwin': + reminder_dynamic_link_path_macos() + elif os_type.lower().startswith("linux"): + reminder_dynamic_link_path_linux() + else: print('\nThis model requires the libRoadrunner libraries which will now be downloaded.') - os_type = platform.system() print('(for your ',os_type, ' operating system)') # Assume Windows From 728da4a54a77a961da84b61c3a47115b762bf2ed Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Mon, 31 Jul 2023 16:34:45 -0400 Subject: [PATCH 04/33] bugfix celltypes3 --- VERSION.txt | 2 +- sample_projects/celltypes3/custom_modules/custom.cpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/VERSION.txt b/VERSION.txt index f88cf52e6..8b9f3284b 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -1.13.0 \ No newline at end of file +1.13.1-beta diff --git a/sample_projects/celltypes3/custom_modules/custom.cpp b/sample_projects/celltypes3/custom_modules/custom.cpp index 9f8f135cf..f32275e0b 100644 --- a/sample_projects/celltypes3/custom_modules/custom.cpp +++ b/sample_projects/celltypes3/custom_modules/custom.cpp @@ -79,6 +79,7 @@ void create_cell_types( void ) This is a good place to set default functions. */ + initialize_default_cell_definition(); cell_defaults.functions.volume_update_function = standard_volume_update_function; cell_defaults.functions.update_velocity = standard_update_cell_velocity; From a73da00354f1b268147972135c7f9cd7d1b182bb Mon Sep 17 00:00:00 2001 From: marcorusc Date: Mon, 31 Jul 2023 16:54:18 +0200 Subject: [PATCH 05/33] Fixed inhibiting behaviors and cleaning. Updated version to 2.2.2 --- addons/PhysiBoSS/src/maboss_intracellular.h | 2 +- addons/PhysiBoSS/src/utils.h | 58 +++++++++++++-------- 2 files changed, 37 insertions(+), 23 deletions(-) diff --git a/addons/PhysiBoSS/src/maboss_intracellular.h b/addons/PhysiBoSS/src/maboss_intracellular.h index 417b51aab..a195be2d9 100644 --- a/addons/PhysiBoSS/src/maboss_intracellular.h +++ b/addons/PhysiBoSS/src/maboss_intracellular.h @@ -10,7 +10,7 @@ #include "maboss_network.h" #include "utils.h" -static std::string PhysiBoSS_Version = "2.2.1"; +static std::string PhysiBoSS_Version = "2.2.2"; class MaBoSSIntracellular : public PhysiCell::Intracellular { private: diff --git a/addons/PhysiBoSS/src/utils.h b/addons/PhysiBoSS/src/utils.h index 69c3d6089..76527da61 100644 --- a/addons/PhysiBoSS/src/utils.h +++ b/addons/PhysiBoSS/src/utils.h @@ -81,34 +81,48 @@ class MaBoSSOutput double value; double base_value; int smoothing; - double smoothed_value; + double probability; + bool initialized = false; - MaBoSSOutput(std::string physicell_name, std::string intracellular_name, std::string action, double value, double base_value, int smoothing) : physicell_name(physicell_name), intracellular_name(intracellular_name), action(action), value(value), base_value(base_value), smoothing(smoothing) { - smoothed_value = base_value; + MaBoSSOutput(std::string physicell_name, std::string intracellular_name, + std::string action, double value, double base_value, + int smoothing) + : physicell_name(physicell_name), intracellular_name(intracellular_name), + action(action), value(value), base_value(base_value), + smoothing(smoothing) { + probability = 0.5; } - void update_value(bool test) { - smoothed_value = (smoothed_value*smoothing + (test?1.0:0.0)) / (smoothing + 1.0); + double update_probability(bool test) { + if (!initialized) { + probability = test; + initialized = true; + } else + probability = + (probability * smoothing + (test ? 1.0 : 0.0)) / (smoothing + 1.0); + + return probability; } - double update(bool test) - { - double true_value; - if (smoothing == 0) { - true_value = value; - } else { - update_value((action == "activation" && test) || (action == "inhibition" and !test)); - true_value = smoothed_value; - } + double update(bool test) { - if (action == "activation" && test) { - double hill = PhysiCell::Hill_response_function( true_value*2 , 1 , 10 ); - return (value-base_value)*hill+base_value; - } else if (action == "inhibition" && !test) { - double hill = PhysiCell::Hill_response_function( true_value*2 , 1 , 10 ); - return value-(value-base_value)*hill; - } - return base_value; + double hill_input; + + if (smoothing == 0) { + hill_input = test ? 1.0 : 0.0; + } else { + hill_input = update_probability(test); + } + + if (action == "activation") { + double hill = PhysiCell::Hill_response_function(hill_input * 2, 1, 10); + return (value - base_value) * hill + base_value; + } else if (action == "inhibition") { + double hill = PhysiCell::Hill_response_function(hill_input * 2, 1, 10); + return ((value - base_value) * (1 - hill)) + base_value; + } + + return base_value; } }; #endif \ No newline at end of file From 7848aada1f2c6c1459e97d5c8853967ed24a13f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vincent=20No=C3=ABl?= Date: Tue, 1 Aug 2023 10:45:16 +0200 Subject: [PATCH 06/33] Now using save_PhysiCell_to_MultiCellDS_v2 in PhysiBoSS Cell Lines --- .../boolean/physiboss_cell_lines/main.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sample_projects_intracellular/boolean/physiboss_cell_lines/main.cpp b/sample_projects_intracellular/boolean/physiboss_cell_lines/main.cpp index fbb71ca96..4bc46940c 100644 --- a/sample_projects_intracellular/boolean/physiboss_cell_lines/main.cpp +++ b/sample_projects_intracellular/boolean/physiboss_cell_lines/main.cpp @@ -147,7 +147,7 @@ int main( int argc, char* argv[] ) char filename[1024]; sprintf( filename , "%s/initial" , PhysiCell_settings.folder.c_str() ); - save_PhysiCell_to_MultiCellDS_xml_pugi( filename , microenvironment , PhysiCell_globals.current_time ); + save_PhysiCell_to_MultiCellDS_v2( filename , microenvironment , PhysiCell_globals.current_time ); sprintf( filename , "%s/states_initial.csv", PhysiCell_settings.folder.c_str()); MaBoSSIntracellular::save( filename, *PhysiCell::all_cells); @@ -202,7 +202,7 @@ int main( int argc, char* argv[] ) { sprintf( filename , "%s/output%08u" , PhysiCell_settings.folder.c_str(), PhysiCell_globals.full_output_index ); - save_PhysiCell_to_MultiCellDS_xml_pugi( filename , microenvironment , PhysiCell_globals.current_time ); + save_PhysiCell_to_MultiCellDS_v2( filename , microenvironment , PhysiCell_globals.current_time ); sprintf( filename , "%s/states_%08u.csv", PhysiCell_settings.folder.c_str(), PhysiCell_globals.full_output_index); @@ -257,7 +257,7 @@ int main( int argc, char* argv[] ) // save a final simulation snapshot sprintf( filename , "%s/final" , PhysiCell_settings.folder.c_str() ); - save_PhysiCell_to_MultiCellDS_xml_pugi( filename , microenvironment , PhysiCell_globals.current_time ); + save_PhysiCell_to_MultiCellDS_v2( filename , microenvironment , PhysiCell_globals.current_time ); sprintf( filename , "%s/states_final.csv", PhysiCell_settings.folder.c_str()); MaBoSSIntracellular::save( filename, *PhysiCell::all_cells ); From 1552962075c3da883c9b1ff29bfb0bf7900f5dac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vincent=20No=C3=ABl?= Date: Tue, 1 Aug 2023 12:36:49 +0200 Subject: [PATCH 07/33] Removing default phenotype function in physiboss cell lines example --- .../boolean/physiboss_cell_lines/custom_modules/custom.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sample_projects_intracellular/boolean/physiboss_cell_lines/custom_modules/custom.cpp b/sample_projects_intracellular/boolean/physiboss_cell_lines/custom_modules/custom.cpp index 390ffdbf4..c3be8fbce 100644 --- a/sample_projects_intracellular/boolean/physiboss_cell_lines/custom_modules/custom.cpp +++ b/sample_projects_intracellular/boolean/physiboss_cell_lines/custom_modules/custom.cpp @@ -90,7 +90,7 @@ void create_cell_types( void ) cell_defaults.functions.volume_update_function = standard_volume_update_function; cell_defaults.functions.update_velocity = NULL; - + cell_defaults.functions.update_phenotype = NULL; cell_defaults.functions.update_migration_bias = NULL; cell_defaults.functions.pre_update_intracellular = pre_update_intracellular; cell_defaults.functions.post_update_intracellular = post_update_intracellular; From 49fd5e422de1d081f3490e1b81787283d59809c2 Mon Sep 17 00:00:00 2001 From: Randy Heiland Date: Tue, 1 Aug 2023 10:08:57 -0400 Subject: [PATCH 08/33] flatten config file --- .../config/PhysiCell_settings.xml | 170 ++++++++++++------ 1 file changed, 113 insertions(+), 57 deletions(-) diff --git a/sample_projects/virus_macrophage/config/PhysiCell_settings.xml b/sample_projects/virus_macrophage/config/PhysiCell_settings.xml index 11f849069..0b44c4a8c 100644 --- a/sample_projects/virus_macrophage/config/PhysiCell_settings.xml +++ b/sample_projects/virus_macrophage/config/PhysiCell_settings.xml @@ -87,7 +87,7 @@ - 2880 + 2880 min micron @@ -97,14 +97,14 @@ - 8 + 1 - output + output_virus_flat - 60 + 10 true @@ -146,11 +146,11 @@ true true - + ./config/initial.mat - + ./config/dirichlet.mat @@ -161,37 +161,17 @@ - - - - 0 0.00208333 0.00416667 0.0166667 - - - 0 - - 516 @@ -207,16 +187,9 @@ 0.0 - - - + + + 0 86400 @@ -294,7 +267,7 @@ 0.15 - + 1 100 @@ -306,10 +279,82 @@ - + + + + 0 + 0.00208333 + 0.00416667 + 0.0166667 + + + + + + 0 + + 516 + + + 0.05 + 0 + 1.66667e-02 + 5.83333e-03 + 0 + 2.0 + + + + + 0.0 + + + + + 0 + 86400 + + + + 1.11667e-2 + 8.33333e-4 + 5.33333e-5 + 2.16667e-3 + 0 + 2.0 + + + + + + 2494 + 0.75 + 540 + + 0.05 + 0.0045 + 0.0055 + + 0 + 0 + + 2.0 + + + + 0.4 + 10.0 + 1.25 + + + 1.8 + 15.12 + + + - 0.5 + 0.5 15 0.4 @@ -323,15 +368,39 @@ + + 0 + 1 0 + 0 + + + + 0 + 1 + 0 + 0 + + + 0.15 + + 1 + 100 + + 10 + 1 + + 1 + 0.01 + - + @@ -342,25 +411,12 @@ - - - - 10 - 1000 - 1.0 - 1.0 - - - + 10 + 1000 + 1.0 + 1.0 50 - 0.05 - - From 346c392dbb6e1da491ee23c6e827b7e9d10f0e4f Mon Sep 17 00:00:00 2001 From: Randy Heiland Date: Tue, 1 Aug 2023 10:14:59 -0400 Subject: [PATCH 09/33] fix output folder etc --- .../virus_macrophage/config/PhysiCell_settings.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sample_projects/virus_macrophage/config/PhysiCell_settings.xml b/sample_projects/virus_macrophage/config/PhysiCell_settings.xml index 0b44c4a8c..9c47fed12 100644 --- a/sample_projects/virus_macrophage/config/PhysiCell_settings.xml +++ b/sample_projects/virus_macrophage/config/PhysiCell_settings.xml @@ -97,14 +97,14 @@ - 1 + 8 - output_virus_flat + output - 10 + 60 true From c71dc784994748a0b821fd8eed2845be68286d2d Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:28:15 -0400 Subject: [PATCH 10/33] Update PhysiCell_cell.cpp bug fix in PhysiCell_cell.cpp, in the default cell constructor: // bug fix July 31 2023 functions.plot_agent_SVG = standard_agent_SVG; functions.plot_agent_legend = standard_agent_legend; // bug fix July 31 2023 for better backwards compatibiltiy. --- core/PhysiCell_cell.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core/PhysiCell_cell.cpp b/core/PhysiCell_cell.cpp index 8844ce055..d3205b254 100644 --- a/core/PhysiCell_cell.cpp +++ b/core/PhysiCell_cell.cpp @@ -161,6 +161,11 @@ Cell_Definition::Cell_Definition() functions.update_velocity = NULL; // standard_update_cell_velocity; functions.add_cell_basement_membrane_interactions = NULL; functions.calculate_distance_to_membrane = NULL; + + // bug fix July 31 2023 + functions.plot_agent_SVG = standard_agent_SVG; + functions.plot_agent_legend = standard_agent_legend; + // bug fix July 31 2023 functions.set_orientation = NULL; From d5eb56583715ad488a08325daca2f440a8addcbc Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:37:18 -0400 Subject: [PATCH 11/33] Update new release protocol.txt update release protocol to prevent errors in libRoadrunner distribution. --- protocols/new release protocol.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/protocols/new release protocol.txt b/protocols/new release protocol.txt index f81122419..50a7055a3 100644 --- a/protocols/new release protocol.txt +++ b/protocols/new release protocol.txt @@ -28,7 +28,11 @@ number. 7) create (and approve) a pull request from the development branch to the master branch. -8) Sourceforge.net release +8) Make a clean GitHub clone of the PhysiCell repo (to ensure no persona/local files remain) before proceeding to make the ZIP for release. + + a) Make sure ./addons/libRoadrunner/roadrunner is not present. + +9) Sourceforge.net release a) Move one directory up. Zip everything in PhysiCell into a new zip file. Use @@ -51,7 +55,7 @@ zip PhysiCell_V.x.y.z.zip -r -X PhysiCell/* -x PhysiCell/.git -x PhysiCell/.giti g) Edit the README.md file (on SF) to exclude it from stats tracking. -9) GitHub release: +10) GitHub release: a) Go to https://github.com/MathCancer/PhysiCell/releases Click "Draft a new release" From 7f44ca878a20f7978e61b5e2d10af0104e4edcf1 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:43:09 -0400 Subject: [PATCH 12/33] Update Makefile --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile b/Makefile index 00e0f1ade..b18652ccc 100644 --- a/Makefile +++ b/Makefile @@ -474,6 +474,16 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 939fc7642b8542c13897d94467e7cc736e210e9e Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:43:52 -0400 Subject: [PATCH 13/33] Update Makefile-default --- sample_projects/Makefile-default | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sample_projects/Makefile-default b/sample_projects/Makefile-default index 00e0f1ade..b18652ccc 100644 --- a/sample_projects/Makefile-default +++ b/sample_projects/Makefile-default @@ -474,6 +474,16 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From cd15c54c9aa38a5d5550d45eea77b08e1be46dbf Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:44:15 -0400 Subject: [PATCH 14/33] Update Makefile --- sample_projects/template/Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sample_projects/template/Makefile b/sample_projects/template/Makefile index 3dbb63634..b304824d7 100644 --- a/sample_projects/template/Makefile +++ b/sample_projects/template/Makefile @@ -290,6 +290,16 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From cc0d0979f93d49a14027df98b5d3e3bfa593b36b Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:51:11 -0400 Subject: [PATCH 15/33] Update Makefile --- sample_projects/template/Makefile | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sample_projects/template/Makefile b/sample_projects/template/Makefile index b304824d7..6682b5c46 100644 --- a/sample_projects/template/Makefile +++ b/sample_projects/template/Makefile @@ -300,6 +300,15 @@ pack: @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." @echo " " +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 170b64e98975b840e505e50288e2985ebcd45c1c Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:51:44 -0400 Subject: [PATCH 16/33] Update Makefile-default --- sample_projects/Makefile-default | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sample_projects/Makefile-default b/sample_projects/Makefile-default index b18652ccc..7302163a0 100644 --- a/sample_projects/Makefile-default +++ b/sample_projects/Makefile-default @@ -484,6 +484,15 @@ pack: @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." @echo " " +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From a11f5306b27ccff4c9a5776f8b1ffc5635ccb27b Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:52:23 -0400 Subject: [PATCH 17/33] Update Makefile --- Makefile | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Makefile b/Makefile index b18652ccc..7302163a0 100644 --- a/Makefile +++ b/Makefile @@ -484,6 +484,15 @@ pack: @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." @echo " " +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 0e620c5ec2826bcda8431eede8631441ee8dffe5 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:54:12 -0400 Subject: [PATCH 18/33] Update Makefile --- sample_projects/biorobots/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/biorobots/Makefile b/sample_projects/biorobots/Makefile index 8993a82be..26314225c 100644 --- a/sample_projects/biorobots/Makefile +++ b/sample_projects/biorobots/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 3d134fb0cfabcc4a0246b7d5d462ccabe4189618 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:54:31 -0400 Subject: [PATCH 19/33] Update Makefile --- sample_projects/cancer_biorobots/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/cancer_biorobots/Makefile b/sample_projects/cancer_biorobots/Makefile index cd4613b5e..b74f8837a 100644 --- a/sample_projects/cancer_biorobots/Makefile +++ b/sample_projects/cancer_biorobots/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From aaf3863b8fec4095512feb76cf5db4605709a900 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:54:54 -0400 Subject: [PATCH 20/33] Update Makefile --- sample_projects/cancer_immune/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/cancer_immune/Makefile b/sample_projects/cancer_immune/Makefile index 0ce56350e..5cbb2ca8f 100644 --- a/sample_projects/cancer_immune/Makefile +++ b/sample_projects/cancer_immune/Makefile @@ -291,6 +291,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 415415aa8338d787e5fcebd183d8a9eb4909b9fe Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:55:13 -0400 Subject: [PATCH 21/33] Update Makefile --- sample_projects/celltypes3/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/celltypes3/Makefile b/sample_projects/celltypes3/Makefile index c05ae9a33..29732af20 100644 --- a/sample_projects/celltypes3/Makefile +++ b/sample_projects/celltypes3/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 7e3ab9995ecea041b8ac328c2796c06bd292e25f Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:55:38 -0400 Subject: [PATCH 22/33] Update Makefile --- sample_projects/heterogeneity/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/heterogeneity/Makefile b/sample_projects/heterogeneity/Makefile index b376de3f0..93d055ea9 100644 --- a/sample_projects/heterogeneity/Makefile +++ b/sample_projects/heterogeneity/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 7027947e2fe0079a67095fd92309a7013f3d5ddf Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:55:57 -0400 Subject: [PATCH 23/33] Update Makefile --- sample_projects/interactions/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/interactions/Makefile b/sample_projects/interactions/Makefile index ef5ed2fe1..c42fc9666 100644 --- a/sample_projects/interactions/Makefile +++ b/sample_projects/interactions/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 1f4ba248a6ffe043d0320edd1487a08756560434 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:56:14 -0400 Subject: [PATCH 24/33] Update Makefile --- sample_projects/mechano/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/mechano/Makefile b/sample_projects/mechano/Makefile index 602fe773b..e90a9966f 100644 --- a/sample_projects/mechano/Makefile +++ b/sample_projects/mechano/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From bd21121463d89f2c632fcee0a16cd57cc02d2337 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:57:07 -0400 Subject: [PATCH 25/33] Update Makefile --- sample_projects/pred_prey_farmer/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/pred_prey_farmer/Makefile b/sample_projects/pred_prey_farmer/Makefile index cad1d191c..06ec2705e 100644 --- a/sample_projects/pred_prey_farmer/Makefile +++ b/sample_projects/pred_prey_farmer/Makefile @@ -291,6 +291,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 5dbf067641bedb1ffb7ad03e66477ecc98b48b0f Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:57:24 -0400 Subject: [PATCH 26/33] Update Makefile --- sample_projects/rules_sample/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/rules_sample/Makefile b/sample_projects/rules_sample/Makefile index 3dbb63634..6682b5c46 100644 --- a/sample_projects/rules_sample/Makefile +++ b/sample_projects/rules_sample/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 98130cfc766f3b2033b2aab4f89195cbbecfcda2 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:57:58 -0400 Subject: [PATCH 27/33] Update Makefile --- sample_projects/virus_macrophage/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/virus_macrophage/Makefile b/sample_projects/virus_macrophage/Makefile index 2ba06f258..d8c8ad4e8 100644 --- a/sample_projects/virus_macrophage/Makefile +++ b/sample_projects/virus_macrophage/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 7c0ff156b06475db39dbeefcf4e7c4444150ee82 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 01:58:19 -0400 Subject: [PATCH 28/33] Update Makefile --- sample_projects/worm/Makefile | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/sample_projects/worm/Makefile b/sample_projects/worm/Makefile index 2dbdff997..e953e28ad 100644 --- a/sample_projects/worm/Makefile +++ b/sample_projects/worm/Makefile @@ -290,6 +290,25 @@ load: cp ./user_projects/$(PROJ)/config/* ./config/ cp ./user_projects/$(PROJ)/custom_modules/* ./custom_modules/ +pack: + @echo " " + @echo "Preparing project $(PROJ) for sharing ... " + @echo " " + cd ./user_projects && zip -r $(PROJ).zip $(PROJ) + @echo " " + @echo "Share ./user_projects/$(PROJ).zip ... " + @echo "Other users can unzip $(PROJ).zip in their ./user_projects, compile, and run." + @echo " " + +unpack: + @echo " " + @echo "Preparing shared project $(PROJ).zip for use ... " + @echo " " + cd ./user_projects && unzip $(PROJ).zip + @echo " " + @echo "Load this project via make load PROJ=$(PROJ) ... " + @echo " " + list-user-projects: @echo "user projects::" @cd ./user_projects && ls -dt1 * | grep . | sed 's!empty.txt!!' From 43aa1da56985bea225540369911ceeca9864c4cf Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 09:07:45 -0400 Subject: [PATCH 29/33] Update VERSION.txt --- VERSION.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION.txt b/VERSION.txt index 8b9f3284b..b50dd27dd 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -1.13.1-beta +1.13.1 From c881e76391dc7c125b90fc1f8f90a322611bac2c Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 09:08:42 -0400 Subject: [PATCH 30/33] Update PhysiCell.h --- core/PhysiCell.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/PhysiCell.h b/core/PhysiCell.h index feaf52590..9a4896801 100644 --- a/core/PhysiCell.h +++ b/core/PhysiCell.h @@ -72,7 +72,7 @@ #include #include -static std::string PhysiCell_Version = "1.13.0"; +static std::string PhysiCell_Version = "1.13.1"; static std::string PhysiCell_URL = "http://PhysiCell.MathCancer.org"; static std::string PhysiCell_DOI = "10.1371/journal.pcbi.1005991"; From dc0578fb7181d2f30299443fcf8da079ede90f18 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 09:10:01 -0400 Subject: [PATCH 31/33] Update CITATION.txt --- CITATION.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CITATION.txt b/CITATION.txt index 525bacbae..4ff6d0820 100644 --- a/CITATION.txt +++ b/CITATION.txt @@ -1,7 +1,7 @@ If you use PhysiCell in your project, please cite PhysiCell and the version number, such as below: -We implemented and solved the model using PhysiCell (Version 1.13.0) [1]. +We implemented and solved the model using PhysiCell (Version 1.13.1) [1]. [1] A Ghaffarizadeh, R Heiland, SH Friedman, SM Mumenthaler, and P Macklin, PhysiCell: an Open Source Physics-Based Cell Simulator for Multicellu- @@ -11,7 +11,7 @@ We implemented and solved the model using PhysiCell (Version 1.13.0) [1]. Because PhysiCell extensively uses BioFVM, we suggest you also cite BioFVM as below: -We implemented and solved the model using PhysiCell (Version 1.13.0) [1], +We implemented and solved the model using PhysiCell (Version 1.13.1) [1], with BioFVM [2] to solve the transport equations. [1] A Ghaffarizadeh, R Heiland, SH Friedman, SM Mumenthaler, and P Macklin, @@ -23,7 +23,7 @@ with BioFVM [2] to solve the transport equations. llelized diffusive transport solver for 3-D biological simulations, Bioinformatics 32(8): 1256-8, 2016. DOI: 10.1093/bioinformatics/btv730 -If you use PhysiBOSS, please cite: +If you use PhysiBoSS, please cite: G. Letort, A. Montagud, G. Stoll, R. Heiland, E. Barillot, P. Macklin, A. Zinovyev, and L. Calzone. PhysiBoSS: a multi-scale agent based From 5da39b46fad6fbd7a3c4abbe4bbb1774df9f3f82 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 09:38:06 -0400 Subject: [PATCH 32/33] Update changes.md --- changes.md | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/changes.md b/changes.md index ab4d22265..454c4ce04 100644 --- a/changes.md +++ b/changes.md @@ -3,6 +3,7 @@ **Release dates:** 29 July 2023 - * 1.13.0 : 29 July 2023 +* 1.13.1 : 6 August 2023 ## Overview: PhysiCell is a flexible open source framework for building agent-based multicellular models in 3-D tissue environments. @@ -67,13 +68,13 @@ Visit http://MathCancer.org/blog for the latest tutorials and help. **Downloads:** http://PhysiCell.sf.net -**Support:** https://sourceforge.net/p/physicell/tickets/ +**Support:** https://join.slack.com/t/physicellcomm-sf93727/shared_invite/zt-qj1av6yd-yVeer8VkQaNDjDz7fF00jA **Quick Start:** Look at QuickStart.md in the documentation folder. **User Guide:** Look at UserGuide.pdf in the documentation folder. -**Setup and Training:** See last year's workshop and hackathon at https://github.com/PhysiCell-Training/ws2021 +**Setup and Training:** See this year's workshop and hackathon at https://github.com/PhysiCell-Training/ws2023 **Older Tutorials:** http://www.mathcancer.org/blog/physicell-tutorials/ @@ -84,6 +85,12 @@ See changes.md for the full change log. * * * ## Release summary: +Version 1.13.x \introduces PhysiMeSS (MicroEnvironment Structures Simulation) as a PhysiCell add-on created to model rod-shaped microenvironment elements such as the matrix fibres (e.g. collagen) of the ECM. These releases also introduce numerous bug fixes, particularly to handling of Dirichlet boundary conditions, while introducing numerous minor feature enhancements such as packing and unpacking user projects (to facilitate code sharing). + +### Version 1.13.1 (6 August 2023): +Version 1.13.1 primarily introduces bug fixes for smoother addon support, as well as new makefile rules to pack a user project for sharing (`make pack PROJ=name`) and to unpack a shared project (`make unpack PROJ=name`). These will create (pack) or expand (unpack) zipped projects in the `./user_projects` folder. To share, send the zipped file and encourage the recipient to store it in their own `./user_projects` folder. + +### Version 1.13.0 (29 July 2023): Version 1.13.0 introduces PhysiMeSS (MicroEnvironment Structures Simulation) as a PhysiCell add-on created by Cicely Macnamara, Vincent Noël and collaborators, which allows the user to specify rod-shaped microenvironment elements such as the matrix fibres (e.g. collagen) of the ECM. This allows the PhysiCell user the ability to investigate fine-grained processes between cellular and fibrous ECM agents. We are providing an sample project together with this addon to demonstrate, via many examples, the possibilities of PhysiMeSS. For more information, consult the PhysiMeSS README available in [./addons/PhysiMeSS/README.md](./addons/PhysiMeSS/README.md). Version 1.13.0 also updates the bundled PhysiBoSS addon, introduces a variety of bug fixes (particularly in handling of Dirichlet boundary conditions), and improves SVG plots. We are grateful for immense contributions by Cicely Macnamara, Vincent Noël, Randy Heiland, Daniel Bergman, Marco Ruscone, Furkan Kurtoglu, and Elmar Bucher in this release. @@ -93,10 +100,21 @@ We are grateful for immense contributions by Cicely Macnamara, Vincent Noël, Ra **NOTE 2:** Windows users need to follow an updated (from v1.8) MinGW64 installation procedure. This will install an updated version of g++, plus libraries that are needed for some of the intracellular models. See the [Quickstart](documentation/Quickstart.md) for details. ### Major new features and changes in the 1.13.z versions +#### 1.13.1 ++ None in this release #### 1.13.0 + Introduced PhysiMeSS, a major addon for modeling fibers of the extracellular matrix. Major thanks to Cicely Macnamara, Vincent Noël, and team! ### Minor new features and changes: +#### 1.13.1 ++ Continued modernization of sample projects for PhysiCell Studio compatibiltiy. See [PR 198](https://github.com/MathCancer/PhysiCell/pull/198). ++ Updated inhibitor behaviors in PhysiBoSS, and further code cleanup. See [PR 194](https://github.com/MathCancer/PhysiCell/pull/194). Thanks, Marco Ruscone! ++ PhysiBoSS cell line example migrated to newer MultiCellDS output. See [PR 193](https://github.com/MathCancer/PhysiCell/pull/193). Thanks, Vincent Noël! ++ Added a new makefile rule to simplify sharing user projects: `make pack PROJ=name` will zip all of the `name` user project in `./user_projects/name.zip`. Send this zip file for sharing your project, and have your recipient: + 1. Place `name.zip` in thier `./user_projects/` folder (preferably PhysiCell version 1.13.1 or later) + 2. Have them run the new rule `make unpack PROJ=name` to expand the project. + 3. After this, the usual rules apply. `make load PROJ=name` to load the project, and a subsequent `make` to compile it. ++ Added a new makefile rule to simplify use of shared user projects: `make unpack PROJ=name` will unzip the contents of `./user_projects/name.zip` into a new user project called `name`. Type `make load PROJ=name` to load this project, and `make` to compile it. #### 1.13.0 + Preparations for a new derived `Cell` class for use in PhysiBoSS, including a new `instantiate_cell` function in `Cell_Functions` to help facilitate this. See [PR 153](https://github.com/MathCancer/PhysiCell/pull/153) (Thanks, Vincent Noël!) + Various safety refinements (`const` accessors) in vector operations ([PR 160](https://github.com/MathCancer/PhysiCell/pull/160)). Thanks, Vincent Noël! @@ -110,12 +128,17 @@ We are grateful for immense contributions by Cicely Macnamara, Vincent Noël, Ra + minor cleanup ### Beta features (not fully supported): - +#### 1.13.1 ++ The dFBA addon is considered "beta" and unsupported at this time. Compatability work is underway. Thank you, Miguel Ponce de Leon and team! #### 1.13.0 + None in this release. ### Bugfixes: - +#### 1.13.1 ++ Bugfixes to and refinements to the libRoadrunner setup scripts. See [PR 196](https://github.com/MathCancer/PhysiCell/pull/196). Thanks to Randy Heiland and Furkan Kurtoglu. ++ Updated PHysiBoSS cell line example project to remove “default phenotype” function. See [PR 195](https://github.com/MathCancer/PhysiCell/pull/195). Thanks, Vincent Noël! ++ Fixed default cell constructor to improve backwards compatibility by including new SVG plot function pointers. See [PR 200](https://github.com/MathCancer/PhysiCell/pull/200). Thanks to John Metzcar for catching this and for careful detective work to isolate the cause! ++ Numerous bugfixes to PhysiCell zip distribution, including a better release protocol. Major thanks to Furkan Kurtoglu, Elmar Bucher, John Metzcar, and Randy Heiland for help! #### 1.13.0 + Fix typographical errors in Makefiles in sample projects. + Set correct value (100) of `cell_BM_repulsion_strength` in `PhysiCell_phenotype.cpp` (Thanks, Elmar Bucher!) From 84d033adba4a013f1fb3e7b7ece252ee254a1f26 Mon Sep 17 00:00:00 2001 From: Paul Macklin Date: Sun, 6 Aug 2023 09:38:11 -0400 Subject: [PATCH 33/33] Update README.md --- README.md | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 809021c67..9fe2dbc03 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,7 @@ **Release dates:** 29 July 2023 - * 1.13.0 : 29 July 2023 +* 1.13.1 : 6 August 2023 ## Overview: PhysiCell is a flexible open source framework for building agent-based multicellular models in 3-D tissue environments. @@ -67,13 +68,13 @@ Visit http://MathCancer.org/blog for the latest tutorials and help. **Downloads:** http://PhysiCell.sf.net -**Support:** https://sourceforge.net/p/physicell/tickets/ +**Support:** https://join.slack.com/t/physicellcomm-sf93727/shared_invite/zt-qj1av6yd-yVeer8VkQaNDjDz7fF00jA **Quick Start:** Look at QuickStart.md in the documentation folder. **User Guide:** Look at UserGuide.pdf in the documentation folder. -**Setup and Training:** See last year's workshop and hackathon at https://github.com/PhysiCell-Training/ws2021 +**Setup and Training:** See this year's workshop and hackathon at https://github.com/PhysiCell-Training/ws2023 **Older Tutorials:** http://www.mathcancer.org/blog/physicell-tutorials/ @@ -84,6 +85,12 @@ See changes.md for the full change log. * * * ## Release summary: +Version 1.13.x \introduces PhysiMeSS (MicroEnvironment Structures Simulation) as a PhysiCell add-on created to model rod-shaped microenvironment elements such as the matrix fibres (e.g. collagen) of the ECM. These releases also introduce numerous bug fixes, particularly to handling of Dirichlet boundary conditions, while introducing numerous minor feature enhancements such as packing and unpacking user projects (to facilitate code sharing). + +### Version 1.13.1 (6 August 2023): +Version 1.13.1 primarily introduces bug fixes for smoother addon support, as well as new makefile rules to pack a user project for sharing (`make pack PROJ=name`) and to unpack a shared project (`make unpack PROJ=name`). These will create (pack) or expand (unpack) zipped projects in the `./user_projects` folder. To share, send the zipped file and encourage the recipient to store it in their own `./user_projects` folder. + +### Version 1.13.0 (29 July 2023): Version 1.13.0 introduces PhysiMeSS (MicroEnvironment Structures Simulation) as a PhysiCell add-on created by Cicely Macnamara, Vincent Noël and collaborators, which allows the user to specify rod-shaped microenvironment elements such as the matrix fibres (e.g. collagen) of the ECM. This allows the PhysiCell user the ability to investigate fine-grained processes between cellular and fibrous ECM agents. We are providing an sample project together with this addon to demonstrate, via many examples, the possibilities of PhysiMeSS. For more information, consult the PhysiMeSS README available in [./addons/PhysiMeSS/README.md](./addons/PhysiMeSS/README.md). Version 1.13.0 also updates the bundled PhysiBoSS addon, introduces a variety of bug fixes (particularly in handling of Dirichlet boundary conditions), and improves SVG plots. We are grateful for immense contributions by Cicely Macnamara, Vincent Noël, Randy Heiland, Daniel Bergman, Marco Ruscone, Furkan Kurtoglu, and Elmar Bucher in this release. @@ -93,10 +100,21 @@ We are grateful for immense contributions by Cicely Macnamara, Vincent Noël, Ra **NOTE 2:** Windows users need to follow an updated (from v1.8) MinGW64 installation procedure. This will install an updated version of g++, plus libraries that are needed for some of the intracellular models. See the [Quickstart](documentation/Quickstart.md) for details. ### Major new features and changes in the 1.13.z versions +#### 1.13.1 ++ None in this release #### 1.13.0 + Introduced PhysiMeSS, a major addon for modeling fibers of the extracellular matrix. Major thanks to Cicely Macnamara, Vincent Noël, and team! ### Minor new features and changes: +#### 1.13.1 ++ Continued modernization of sample projects for PhysiCell Studio compatibiltiy. See [PR 198](https://github.com/MathCancer/PhysiCell/pull/198). ++ Updated inhibitor behaviors in PhysiBoSS, and further code cleanup. See [PR 194](https://github.com/MathCancer/PhysiCell/pull/194). Thanks, Marco Ruscone! ++ PhysiBoSS cell line example migrated to newer MultiCellDS output. See [PR 193](https://github.com/MathCancer/PhysiCell/pull/193). Thanks, Vincent Noël! ++ Added a new makefile rule to simplify sharing user projects: `make pack PROJ=name` will zip all of the `name` user project in `./user_projects/name.zip`. Send this zip file for sharing your project, and have your recipient: + 1. Place `name.zip` in thier `./user_projects/` folder (preferably PhysiCell version 1.13.1 or later) + 2. Have them run the new rule `make unpack PROJ=name` to expand the project. + 3. After this, the usual rules apply. `make load PROJ=name` to load the project, and a subsequent `make` to compile it. ++ Added a new makefile rule to simplify use of shared user projects: `make unpack PROJ=name` will unzip the contents of `./user_projects/name.zip` into a new user project called `name`. Type `make load PROJ=name` to load this project, and `make` to compile it. #### 1.13.0 + Preparations for a new derived `Cell` class for use in PhysiBoSS, including a new `instantiate_cell` function in `Cell_Functions` to help facilitate this. See [PR 153](https://github.com/MathCancer/PhysiCell/pull/153) (Thanks, Vincent Noël!) + Various safety refinements (`const` accessors) in vector operations ([PR 160](https://github.com/MathCancer/PhysiCell/pull/160)). Thanks, Vincent Noël! @@ -110,12 +128,17 @@ We are grateful for immense contributions by Cicely Macnamara, Vincent Noël, Ra + minor cleanup ### Beta features (not fully supported): - +#### 1.13.1 ++ The dFBA addon is considered "beta" and unsupported at this time. Compatability work is underway. Thank you, Miguel Ponce de Leon and team! #### 1.13.0 + None in this release. ### Bugfixes: - +#### 1.13.1 ++ Bugfixes to and refinements to the libRoadrunner setup scripts. See [PR 196](https://github.com/MathCancer/PhysiCell/pull/196). Thanks to Randy Heiland and Furkan Kurtoglu. ++ Updated PHysiBoSS cell line example project to remove “default phenotype” function. See [PR 195](https://github.com/MathCancer/PhysiCell/pull/195). Thanks, Vincent Noël! ++ Fixed default cell constructor to improve backwards compatibility by including new SVG plot function pointers. See [PR 200](https://github.com/MathCancer/PhysiCell/pull/200). Thanks to John Metzcar for catching this and for careful detective work to isolate the cause! ++ Numerous bugfixes to PhysiCell zip distribution, including a better release protocol. Major thanks to Furkan Kurtoglu, Elmar Bucher, John Metzcar, and Randy Heiland for help! #### 1.13.0 + Fix typographical errors in Makefiles in sample projects. + Set correct value (100) of `cell_BM_repulsion_strength` in `PhysiCell_phenotype.cpp` (Thanks, Elmar Bucher!)