The aim of the project is to create an application that simulates the spread of a viral contamination in a city, as well as the fight against this contamination by some of its citizens, in order to put into practice the knowledge acquired in class.
The majority of the project was developed in C, with the exception of the graphics part, which was developed in Python. You will need Gnuplot.
This project contains several main folders:
- The
binfolder with the executable. - The
docfolder contains information on the files used in the project and the report. - The
includefolder contains the header files required for the project. - The
resourcesfolder, which contains various resources used in the project such as images or generated files by programs. - The
srcfolder contains the source code used for the executables.
cd OSproject
make
It will compile all the executable, but if you want to compile just the executables for the simulation, type instead:
make exec
Or if you want only test:
make test
(you can launch them by issuing this command:)
./bin/test
The last step is to run the simulation by typing the following command:
./bin/launcher
Or type this command to compile and run simulation:
bash launch.sh
You can either launch the four mains programs in different terminals.
When you launch the program, you will be taken to this interface:
The section on the left shows how the city is evolving and how people are moving around.
The section on the right shows the evolution of contamination on graphs. There are also several buttons for launching the simulation, displaying the real data, the data sent by journalists, and displaying the legend.
To launch the simulation, click on the "Run ▶" button (you can stop it by clicking again).
To see the real values of the spread of contamination, select the "Real Time News" mode by clicking the corresponding button.
To see the values of the spread of contamination sent by reporters, select the "Press Agency News" mode by clicking the corresponding button.
Finally, to see what the elements on the map correspond to, hover your mouse over the ‘i’ bubble.
- Lucie Chauvet lucie.chauvet@ecole.ensicaen.fr
- Mathis Dubuisson mathis.dubuisson@ecole.ensicaen.fr
- Audrey Leconte audrey.leconte@ecole.ensicaen.fr
- Valentin Salic valentin.salic@ecole.ensicaen.fr
In your computer's terminal, use the cd function to access the main folder and issue this command:
make doc
In your computer's terminal, use the cd function to access the main folder and issue this command:
make clean
In your computer's terminal, use the cd function to access the main folder and issue this command:
make cleantest
In your computer's terminal, use the cd function to access the main folder and issue this command:
make distclean
make cleandoc # Clean the html folder in ./doc (used by the Gitlab pages)





