-
Notifications
You must be signed in to change notification settings - Fork 11
Example_Cell_Sorting
Step-by-step example of running a simulation with PhysiBoSS: spontaneous cell sorting due to differences in cell adhesion strength.
In this example, we showed all the steps required to simulate the mechanical sorting of cell from two different cell lines, with the necessary files provided so that it can be reproduced by the user.
We are simulating here a spheroid of active cells from two cell lines (blue and red), surrounded by extra-cellular-matrix represented as passive spheres (transparent grey). The two cell lines are identical, except that their adhesion strength parameters are different. Here, we ignored cell cycling and no boolean network is needed.
First the simulation folder must be prepared. We used a precise organization of the simulation to be able to automatize the creation, running and analyse of numerous simulations. The main folder (called in this example example_hello_world
) contains the run*
folders.
Each run folder contain an individual simulation. This is especially usefull to simulate a similar condition, with only one parameter changing in each run folder, or all the same to repeat it for robutness. In this example, we did two runs (run0, run1
folder). In run0
, the first cell line doesn't adhere to the matrix (parameters ecm_adhesion_min =0
and ecm_adhesion_max = 0
), while in the second folder run1
, those values are put to 10, so the cell can attach to the matrix.
To specify different parameters for each cell line, there are two cell_properties
elements in the parameter file and their order in the parameter file defines the corresponding cell line (the first cell_properties
element defined the cell line 0, the second one the cell line 1...).
A run
folder must contain the parameter XML file. It can also contains the initial configuration file, as in this example init.txt
. It was created with the PhysiBoSS_CreateInitTxtFile
executable. The two output subfolders output
and microutput
that will be used by PhysiBoSS
to write the results files must be present.
To run the simulation, open a Terminal window in the (here run0
) folder of the simulation and call PhysiBoSS
executable:
path_to_PhysiBoSS/bin/PhysiBoSS -p parameters.xml
During the simulations, summary informations are printed to the terminal (initialisation, number of cells dividing, dying, time spent...). It can be more convenient to redirect it to an other file to supress any output when running multiple simulations at once:
path_to_PhysiBoSS/bin/PhysiBoSS -p parameters.xml > msg.txt
Output files are written in the two output folders, and svg snapshots can be written at given frequency to directly visualize the simulation evolution.
This simulation took less than 1 min to run on our cluster.
To visualize 3D+t results of the simulations, we used the software Paraview
which allows for high flexibility and intereactive viewing options. In the files available for this example, the state file example_hello_world.pvsm
contains the setting-up of paraview to draw the output files in 3D view. To use it, open Paraview
, click on ( File -> Load State...) and select the state file
example_cell_sorting.pvsm
. Then a window to choose the files to visualize will pop up, select in the output folder of the simulation the passive cells files stack first, then the active cells stack.
Below are snapshots of the simulation that you should obtain by re-running it and visualizing it with our customized paraview state file. Cells of the first cell line (the most adhesive one) are in blue, cells of the second cell line are in red. Transparent grey spheres are the passive spheres. First row of the figure correspond to snapshots of the simulation in run0
folder, so when the blue cell line doesn't adhere to the ECM. In the second row, it is the results of the run1
folder, blue cells can adhere to ECM.