Skip to content

Latest commit

 

History

History
40 lines (22 loc) · 2.81 KB

README.md

File metadata and controls

40 lines (22 loc) · 2.81 KB

PISKaS

PISKaS is a stochastic simulator for rule-based models written in an expanded version of Kappa-Language, which we call Spatial Kappa (see the wiki of this repository). PISKaS is directly based on (and forked from) the repository of the simulation software KaSim v3.5. The main new features of PISKaS are:

  1. Models must be written in Spatial Kappa (wiki/usage).
  2. Simulations will run using an MPI framework, where every compartment or cell (subcompartments defined with an array notation) use an independent core of the computing architecture.
  3. To run a spatial simulation you need to use the mpirun tool of your MPI framework, and give as "number-of-cores" parameter (-n X), where X is the amount of compartments or cells of your model.
  4. You need to specify the synchronization step for your simulation using the PISKaS argument -sync-t. This argument defines the time step to synchronize compartments; a small value gives a slow but accurate simulation and a large value, a fast but unaccurate simulation.

It is recomended to first read the pdf of KaSim reference manual (available here) to learn about stochastic simulation and Kappa-Language.

Installation

Detailed intructions to install are in wiki/Installation

To install you need the ocaml native compiler. To check whether you have it, type

ocamlopt.opt -version

Ocaml installation tutorial can be found on its official website. You will also need the ocamlMPI library and an MPI framework like OpenMPI for compliation and for running simulations. It is recomended that you install both ocaml and libraries using Opam. To learn about how to do this please visit the wiki of this repository.

To create PISKaS binaries, simply type

make

This should produce PISKaS binaries. You will need your own plotting program (like gnuplot) to visualize curves.

Usage

You could run the example file predator2x2.cka. In order to run a simulation of 100 time units, type

mpirun -n 4 PISKaS -i predator2x2.cka -t 100 -p 1000 -sync-t 0.5 -o data_file

This will produce several (one for each compartment) data files of 1000 point (-p option) containing the trajectory that was produced during the simulation with synchronization step of 0.5 time units (i.e. 200 synchronizations).

Help

Type PISKaS --help for a complete list of options.