What it simulates
Artistoo simulates cells on a pixel grid with the Cellular Potts Model (CPM). Each cell is a set of pixels. The model makes copy attempts, where a pixel tries to take the label of a neighbor. Energy constraints decide how likely each attempt is. The constraints here are adhesion between neighbors, a volume constraint and, for the Act model, perimeter and activity constraints. The page counts time in Monte Carlo steps (MCS).
The browser page runs two models with Artistoo 1.2.0:
- Cell sorting. Two cell types start as a randomly mixed disc. Adhesion energy J is set for same-type contacts, different-type contacts and contacts with the medium.
- Migrating cell (Act model). One cell with volume, perimeter and activity constraints crawls across the grid. The cell reinforces recently protruded pixels. This follows Niculescu et al. (2015).
The temperature T sets how strongly the model listens to the energy constraints, as the Artistoo manual puts it.
When to use it
Use it to ask what cell-cell adhesion, size and motility rules produce:
- Does a difference in adhesion strength sort two cell types?
- How fast does sorting happen at a given temperature?
- Does a stronger activity constraint make a cell travel farther?
PyAFV and tyssue on biosimhub model tissue as polygons (active Voronoi cells and a vertex model). They fit confluent epithelia, where cell shape is a polygon with a preferred area and perimeter. Artistoo fits when cells deform freely, round up, crawl or sit among a medium.
Run it in your browser
Press Run with the defaults. The lattice draws live and the chart updates as it goes. The page needs no install. The run happens in your browser.
Controls:
- Model picks sorting or Act. Choosing one resets grid size, target volume and MCS to that model's defaults.
- Grid size is pixels per side (40 to 300). The grid wraps around at the edges.
- Cells of type A / B (sorting only) set the cell counts. 40 + 40 cells of 100 pixels is the default.
- Target volume is the pixel count each cell tries to keep.
- J same type, J different type, J with medium (sorting only) are adhesion energies. Defaults 10, 40 and 20. Sorting needs J different type to be higher than J same type.
- Act strength and Act memory (Act only) are LAMBDA_ACT (default 200) and MAX_ACT (default 80).
- Temperature T defaults to 20.
- Monte Carlo steps defaults to 3000 for sorting and 1000 for Act.
- Seed must be 1 or more. Seed 0 would make Artistoo pick a random seed, so the page refuses it.
Readouts:
- For sorting, the chart is the heterotypic fraction. It is the share of cell-cell boundary (4-neighbor pixel pairs) that joins an A cell to a B cell. Random mixing of equal numbers gives about 0.5. A lower value means more sorting.
- For Act, the chart is the net displacement of the cell centroid from its start, in pixels, unwrapped across the periodic edge.
- The Grid hash is an FNV-1a hash of the final lattice. The same parameters and seed give the same hash.
Limits: the browser build runs on the main thread, so the grid stops at 300 and runs stop at 20000 MCS. The page rejects setups where the cells do not fit, which is when the cell disc is wider than 90% of the grid. Constants not in the form are fixed. The volume constraint LAMBDA_V is 50 and the Act model's perimeter constraint LAMBDA_P is 2. With reduced motion set in the OS, only the final state is drawn.