The Higher Education and Research forge

Home My Page Projects Code Snippets Project Openings EMULSION public releases
Summary Activity Surveys SCM Listes Sympa

SCM Repository

d42cd2f84faba86dbf34b9e57fa2eb0798c20d9b
1 ************
2 Installation
3 ************
5 Requirements
6 ************
8 System
9     EMULSION has been tested with **MacOS** and **Linux**. This
10     installation procedure works for both.
12     Also, in what follows, we assume you are working with a **bash**
13     shell. If you are not sure, typing: ``echo $SHELL`` should print
14     ``/bin/bash``. Otherwise, please refer to the documentation of
15     your shell to adapt the commands below.
17 Language
18     EMULSION is written in Python3 (version 3.6 or higher). In what
19     follows, we assume that ``python3`` and ``pip3`` refer to your
20     Python3 installation. If not, replace them by your own
21     configuration in the commands below.
23     To install Python on your system, please consult `Python website <https://www.python.org/downloads/>`_
27 Install with ``pip``
28 ********************
30 .. code-block:: bash
32    sudo pip3 install emulsion
33    init_emulsion
34    source $HOME/.basrc
36 The second command (``init_emulsion``) initializes command-line
37 completion (available with a bash shell, under Linux or MacOS) allows
38 to use ``TAB`` key to get suggestions on what is expected (options,
39 files, parameters...) in the command.
41 When installing with ``pip``, `documentation <https://sourcesup.renater.fr/emulsion-public>`_
42 is provided on-line.
45 Install with ``git``
46 ********************
48 #. Install (or update) required packages
50    .. code-block:: bash
52       sudo pip3 install numpy scipy matplotlib sympy pandas
53       sudo pip3 install networkx docopt jinja2 textx
54       sudo pip3 install sortedcontainers tqdm pyyaml
55       sudo pip3 install bokeh sqlalchemy
57 #. Clone the EMULSION repository
59    .. code-block:: bash
61       git clone https://git.renater.fr/emulsion-public.git
62       cd emulsion-public
64 #. Add the ``src`` directory to your ``PYTHONPATH`` environment
65    variable.
67    .. code-block:: bash
69       echo "export PYTHONPATH=$(pwd)/src" >>$HOME/.bashrc
71 #. Install command-line completion (optional but very convenient).
73    .. code-block:: bash
75       echo "source $(pwd)/scripts/emulsion-completion.sh" >>$HOME/.bashrc
77    Command-line completion (available with a bash shell, under Linux
78    or MacOS) allows to use ``TAB`` key to get suggestions on what is
79    expected (options, files, parameters...) in the command.
81 #. Create command ``emulsion``:
83    .. code-block:: bash
85       echo "alias emulsion='python3 -m emulsion'" >>$HOME/.bashrc
87 #. Force the shell to update your init file:
89    .. code-block:: bash
91       source $HOME/.bashrc
94 Install third-party software
95 ****************************
97 `Graphviz <http://www.graphviz.org>`_ is highly recommended
98 (otherwise, simulations will run but you will not be able to get the
99 nice diagrams representing model structure).
101 To install on Linux:
103 .. code-block:: bash
105    sudo apt install graphviz
107 To install on MacOS, use for instance `homebrew <https://brew.sh/>`_
109 .. code-block:: bash
111    brew install graphviz
114 Test your installation
115 **********************
117 Download **model examples**
118 `here. <https://sourcesup.renater.fr/emulsion-public/models.zip>`_
120 Extract the archive, open a terminal in the ``models`` directory, then type:
122 .. code-block:: bash
124    cd quickstart
125    emulsion run --plot quickstart.yaml --view-model --silent
127 This should produce the following output::
129     Simulation level: herd
130     Generated state machine diagram img/Quickstart_age_group_machine.png
131     Generated state machine diagram img/Quickstart_life_cycle_machine.png
132     Generated state machine diagram img/Quickstart_health_state_machine.png
133     100%|*************************************************************| 10/10
134     Simulation finished in 9.48 s
135     Outputs stored in outputs/counts.csv
136     Outputs plot in file: img/Quickstart.html
138 and the following figures should appear in your navigator:
140 .. graphviz:: ../_images/Quickstart_age_group.dot
141    :align: center
143 .. image:: ../_images/Quickstart_JA.png
144    :align: left
146 .. graphviz:: ../_images/Quickstart_life_cycle.dot
147    :align: center
149 .. image:: ../_images/Quickstart_GNG.png
150    :align: left
152 .. graphviz:: ../_images/Quickstart_health_state.dot
153    :align: center
155 .. image:: ../_images/Quickstart_MSEIRQ.png
156    :align: left
158 .. image:: ../_images/Quickstart_others.png
159    :align: left