All Projects → ingewortel → artistoo

ingewortel / artistoo

Licence: MIT license
CPM implementation in pure JavaScript

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects
Mustache
554 projects
Makefile
30231 projects
shell
77523 projects
r
7636 projects

Projects that are alternatives of or similar to artistoo

logic-life-search
Cellular automata search program
Stars: ✭ 23 (-8%)
Mutual labels:  cellular-automata
Jupyter Dock
Jupyter Dock is a set of Jupyter Notebooks for performing molecular docking protocols interactively, as well as visualizing, converting file formats and analyzing the results.
Stars: ✭ 179 (+616%)
Mutual labels:  computational-biology
convoca
Predict and analyze cellular automata using convolutional neural networks
Stars: ✭ 66 (+164%)
Mutual labels:  cellular-automata
Mixed Cell Cellullar Automata
The Mixed-Cell Cellullar Automata (MCCA) provides a new approach to enable more dynamic mixed landuse modeling to move away from the analysis of static patterns. One of the biggest advantages of mixed-cell CA models is the capability of simulating the quantitative and continuous changes of multiple landuse components inside cells.
Stars: ✭ 33 (+32%)
Mutual labels:  cellular-automata
ALPACA
A Language for the Pithy Articulation of Cellular Automata
Stars: ✭ 21 (-16%)
Mutual labels:  cellular-automata
CompBioDatasetsForMachineLearning
A Curated List of Computational Biology Datasets Suitable for Machine Learning
Stars: ✭ 90 (+260%)
Mutual labels:  computational-biology
Algorithms
Free hands-on course with the implementation (in Python) and description of several computational, mathematical and statistical algorithms.
Stars: ✭ 117 (+368%)
Mutual labels:  cellular-automata
Tangram
Spatial alignment of single cell transcriptomic data.
Stars: ✭ 149 (+496%)
Mutual labels:  computational-biology
ton-lang
A visual programming language, evaluated as a cellular automaton
Stars: ✭ 60 (+140%)
Mutual labels:  cellular-automata
HCA saliency codes
Codes for HCA (Hierarchical Cellular Automata for Visual Saliency) accepted by IJCV 2018.
Stars: ✭ 18 (-28%)
Mutual labels:  cellular-automata
bioSyntax-archive
Syntax highlighting for computational biology
Stars: ✭ 16 (-36%)
Mutual labels:  computational-biology
Roguelike-Procedual-Cave-Generator
A procedurally generated, cave-like dungeon/map creator for rogue-like games using the cellular automata method. During its development, I solved a common/limiting problem with this algorithm that might explain why it is not more commonly implemented in such games.
Stars: ✭ 26 (+4%)
Mutual labels:  cellular-automata
cellular
A simple command-line tool that generates gif images and animations from elementary cellular automata
Stars: ✭ 28 (+12%)
Mutual labels:  cellular-automata
The Powder Toy
Written in C++ and using SDL, The Powder Toy is a desktop version of the classic 'falling sand' physics sandbox, it simulates air pressure and velocity as well as heat.
Stars: ✭ 3,128 (+12412%)
Mutual labels:  cellular-automata
xentica
GPU-accelerated engine for multi-dimensional cellular automata
Stars: ✭ 29 (+16%)
Mutual labels:  cellular-automata
python-algorithms-and-simulations
Different algorithms and simulations from gravity simulations to cellular automata, implemented in python.
Stars: ✭ 21 (-16%)
Mutual labels:  cellular-automata
bac-genomics-scripts
Collection of scripts for bacterial genomics
Stars: ✭ 39 (+56%)
Mutual labels:  computational-biology
Computational-CryoEM
A curated list of awesome computational cryo-EM methods.
Stars: ✭ 33 (+32%)
Mutual labels:  computational-biology
flocc
Agent-based modeling in JavaScript in the browser or on the server.
Stars: ✭ 26 (+4%)
Mutual labels:  cellular-automata
webgpu-cca
Experiment implementation of Multiple Neighborhoods Cellular Automata using WebGPU
Stars: ✭ 31 (+24%)
Mutual labels:  cellular-automata

Artistoo (Artificial Tissue Toolbox)

Artistoo (formerly called CPMjs) is a JavaScript library for building Cellular Potts Model (CPM) simulations that can be shared and explored in the web browser, without requiring installed software. Full documentation is available on artistoo.net.

Artistoo is an open-source library, freely available under the terms of the MIT license. When using Artistoo for a publication please cite:

Wortel & Textor. Artistoo, a Library to Build, Share, and Explore Simulations of Cells and Tissues in the Web Browser. eLife 2021;10:e61288. DOI: 10.7554/eLife.61288

About

Artistoo implements a simple Cellular Potts Model in JavaScript. The code includes several extensions, including the extension for cell migration published in

Ioana Niculescu, Johannes Textor, Rob J. de Boer: Crawling and Gliding: A Computational Model for Shape-Driven Cell Migration PLoS Computational Biology 11(10): e1004280 http://dx.doi.org/10.1371/journal.pcbi.1004280

Custom extensions can be plugged in where needed; please refer to artistoo.net or use the Discussions section of this repository if you need help.

Documentation Inline docs

You can find full documentation of available methods here, or have a look at the manual for tutorials to get started. Alternatively, see below for a brief description and a list of examples.

How it works

This code has been ported over from our older "cpm" repository. This is now an ES6 module, which is compiled trough "rollup" for use in the browser. Users who wish to use this version of Artistoo can use the compiled code in the build/ folder as it is; there is no need to compile anything. See below for examples and how to use them, or visit artistoo.net for more extensive documentation.

Developers can extend the code with their own modules; documentation will follow later (see the Makefile).

Browser examples

Artistoo can be used to create interactive simulations in the webbrowser. We have implemented several examples showing various processes that can be simulated with a CPM; see artistoo.net/examples.html. (Please note that these examples may not work properly in Internet Explorer). The page also contains a few examples of plain cellular automata (CA).

Node examples

Simulations can also be run from the command line using Node.js. The first time you do this, you have to install several dependencies. Go to the base folder of this package and run

npm install

which will automatically install the dependencies as supplied in the package.json file.

Here's an example of how to run the node script:

cd examples/node
node run-ActModel.js

This may give an error the first time, because the script is trying to store images of the simulation to a file output/img/ActModel which does not exist. Create this directory and try again:

mkdir -p output/img/ActModel
node run-ActModel.js

This will print some output to the console; typically the centroid of each cell at each timepoint. See the node script and the Simulation class for details.

To create a movie, run:

mkdir -p output/mp4
ffmpeg -r 60 -f image2 -i output/img/ActModel/ActModel-t%d.png -vcodec libx264 -crf 25 -pix_fmt yuv420p output/mp4/ActModel.mp4
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].