Domain-Specific Modeling for Epidemiology
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
images First commit Jul 19, 2018
src Start to add tests to cover #73 future modifications Nov 23, 2018
.smalltalk.ston First commit Jul 19, 2018
.travis.yml First commit Jul 19, 2018
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md Jul 20, 2018
CONTRIBUTING.md Update CONTRIBUTING.md Aug 6, 2018
LICENSE First commit Jul 19, 2018
README.md Update README.md Aug 8, 2018
appveyor.yml First commit Jul 19, 2018

README.md

Build Status Build status Coverage Status

License

Kendrick provide a Domain-Specific Language and a Simulation Plaform for mathematical epidemiology modeling. It helps epidemiologists craft custom analyses cheaply. It's based on Pharo and it's open source under MIT. Classes of epidemic model include deterministic compartmental models, stochastic individual contact models, and individual-based network models.

Kendrick is based extensively on several tools of the meta-modeling platform MOOSE including PetitParser and Roassal visualization engine.

Citation

If you are using Kendrick for research, please cite our work as:

BUI Thi Mai Anh, Mikal Ziane, Serge Stinckwich, HO Tuong Vinh, Benjamin Roche, Nick Papoulias (2016). Separation of Concerns in Epidemiological Modelling, Companion Proceedings of the 15th International Conference on Modularity, pages 196-200 URL: http://dl.acm.org/citation.cfm?id=2892699

Documentation

You will find documentation about Kendrick DSL in the wiki : https://github.com/UMMISCO/kendrick/wiki

Kendrick is also described in a chapter of the Agile Visualization book.

How to install a stable version of Kendrick

If you don't want to compile Kendrick on your machine, you can download pre-compiled versions of Kendrick for your platform of choice, follow the links below:

Ubuntu and Debian-based systems, 32-bit libraries setup:

  • apt-get -qq update
  • apt-get -y install wget
  • apt-get -y install unzip
  • dpkg --add-architecture i386
  • apt-get update
  • apt-get -y install libx11-6:i386
  • apt-get -y install libgl1-mesa-glx:i386
  • apt-get -y install libfontconfig1:i386
  • apt-get -y install libssl1.0.0:i386

You can also install Kendrick 0.42 from source files. On systems with a bash cmd-line (this includes Linux, Mac and Windows with Cygwin and/or the Windows 10 Bash sub-system), you can compile Kendrick from sources using the following command:

wget -O- https://goo.gl/WUQxmp | bash

How to install the development version of Kendrick from github

  • Download Pharo 6.1 VM depending of your platform: http://pharo.org/download
  • Load Kendrick: Open Pharo 6.1 image then right-click anywhere to open the main menu. Choose Playground to execute script. Paste the script below in Playground, select all then right-click and choose Do it to execute this.
Metacello new
        repository: 'github://UMMISCO/kendrick:master/src';
        baseline: 'Kendrick';
        load

How to invoke Kendrick

DSL Editor

After compiling from source or downloading the pre-compiled versions of Kendrick, you can run the dedicated Kendrick editor (using the Kendrick DSL), by invoking:

./KendrickUI

Development Environmement

To run Kendrick with the full Pharo environment (allowing to use both the DSL and the Pharo API of Kendrick), you can invoke:

./KendrickDevUI

Using External Tools

Finally, to use Kendrick with an editor of your choice, you only need to navigate in the Sources directory of your installation, edit / add files for your project and invoke the non-interactive kendric executable as follows (example for simulating and visualizing the results described in Influenza1Viz.kendrick):

./Kendrick Sources/Projects/Infuenza/Visualization/Influenza1Viz.kendrick

In the above example you can then find the results in:

Sources/Projects/Infuenza/Output/Influenza1Viz.png