Open source Transport Network Simulation - Analysis of traffic behaviour on networks for different traffic scenarios and network configurations.
Documentation can be found: here
You can find the opentnsim book, based on the examples in the notebooks
folder on the opentnsim-book website.
To install OpenTNSim, run this command in your terminal:
pip install opentnsim
To also install the extra dependencies used for testing you can use:
pip install opentnsim[testing]
This is the preferred method to install OpenTNSim, as it will always install the most recent stable release.
If you don not have pip installed, this Python installation guide can guide you through the process. You can read the documentation for other installation methods and a more detailed description.
The sources for OpenTNSim can be downloaded from the Github repo. You can clone the public repository:
# Use git to clone OpenTNSim
git clone git://github.com/TUDelft-CITG/OpenTNSim
Once you have a copy of the source, you need to create a virtual environment to install the packages in. Run the following code in the base directory of the OpenTNSim folder:
# create virtual environment
python3 -m venv .venv
# install packages (the dot is important!)
pip install -e .
pip install -e .[testing]
When you have installed the package loacally, you can run the unit tests
pytest
Or you can run the notebook tests:
pytest --nbmake ./notebooks --nbmake-kernel=python3 --ignore ./notebooks/cleanup --ignore ./notebooks/student_notebooks --ignore ./notebooks/broken
Or you can run a specific test like this:
pytest -k test_single_engine
The benefit of OpenTNSim is the generic set-up. A number of examples are presented in in the notebooks
folder on the opentnsim-book website. Additional examples can be found in the notebooks-folder in this repository.
Based on the examples and docs a book can be generated using the commands make book
and cleaned up using make clean-book
. These commands are unix only.
Code quality is checked using sonarcloud. You can see results on the sonarcloud website. For now we have disabled coverage and duplication checks. These can be enabled when we include coverage measurements and reduce duplication by optimizing the tests.
OpenTNSim makes use of the OpenCLSim code. Both packages are maintained by the same team of developers. You can use these packages together, and combine mixins from both packages. When you experience a problem with integrating the two packages, please let us know. We are working towards further integrating these two software packages.