VTTI-CSM / NeTrainSim

An open-source network train simulator.
https://vtti-csm.github.io/NeTrainSim/
GNU General Public License v3.0
4 stars 1 forks source link
freight-simulation linux macos railway windows

NeTrainSim
NeTrainSim [Network Trains Simulator]

DOI License: GNU GPL v3 GitHub tag (latest by date) GitHub All Releases CLA Required CLA assistant

Download NeTrainSim | How to Install and Quick Overview | Documentation | Slack

Network Train Simulator (NeTrainSim)

NeTrainSim is an open-source train simulation software that allows users to simulate and analyse train operations on a large rail network. It is designed to be flexible, modular, and easy to use. It is built using Qt6 under the GNU General Public License (GPL) version 3.

How to Cite

@inproceedings{aredah2023netrainsim,
  title={NeTrainSim: A Network Freight Train Simulator for Estimating Energy/Fuel Consumption},
  author={Aredah, Ahmed and Fadhloun, Karim and Rakha, Hesham and List, George},
  booktitle={102nd Transportation Research Board Annual Meeting},
  year={2023}
}

Features

main NeTrainSim window

Getting Started

To get started with NeTrainSim, you will need to download and install the software on your computer. You can do this by downloading the latest release version on the releases page.

Prerequisites

There is no prerequisite required to run NeTrainSim as the installer has all the required 3rd party packages.

Installing

Once the file is downloaded on your hard drive. Double click the downloaded file and follow the instruction to install the application. The default installation folder is C:\Program Files\NeTrainSim; however, you can alter this installation path as you wish during the installation process.

Follow this video if you need a quick installation guidance: https://youtu.be/bbvnPn9zMsQ

Running

Using GUI interface

  1. Please initiate the 'NeTrainSimGUI' application, which can be located either in the Windows Start menu or on your desktop.
  2. Presented below is the primary user interface for the NeTrainSim application.

main NeTrainSim window

  1. For a comprehensive understanding of the application and its functionalities, please refer to the relevant documentation available within the 'Help' section of the menu.

Using shell interface

  1. Open a shell/command line window,

  2. Navigate to the installation path using

    cd "C:\Program Files\NeTrainSim"

    if you changed the default installation path, make sure to replace C:\Program Files\NeTrainSim with your installation path.

  3. To request help from NeTrainSim, type the following in the shell

    NeTrainSim -h
  4. NeTrainSim allows the following command flags. Flags with required values are necessary to run the simulator.

    -h, --help, -?                          Display this help message.
    -v, --version                           Displays version information.
    -n, --nodes <nodesFile>                 [Required] the nodes filename.
    -l, --links <linksFile>                 [Required] the links filename.
    -t, --trains <trainsFile>               [Required] the trains filename.
    -o, --output <outputLocation>           [Optional] the output folder address.
                                          Default is
                                          'C:\Users\<USERNAME>\Documents\NeTrain
                                          Sim\'.
    -s, --summary <summaryFilename>         [Optional] the summary filename.
                                          Default is
                                          'trainSummary_timeStamp.txt'.
    -a, --all <summarizeAllTrains>          [Optional] bool to show summary of
                                          all trains in the summary file.
                                          Default is 'false'.
    -e, --export <exportTrajectoryOptions>  [Optional] bool to export
                                          instantaneous trajectory.
                                          Default is 'false'.
    -i, --insta <instaTrajectoryFile>       [Optional] the instantaneous
                                          trajectory filename.
                                          Default is
                                          'trainTrajectory_timeStamp.csv'.
    -p, --timeStep <simulatorTimeStep>      [Optional] the simulator time step.
                                          Default is '1.0'.

    Example of a minimum-flag command

    NeTrainSim.exe -n "path\to\nodes\file" -l "path\to\links\file" -t "path\to\trains\file"

    In this case, the default output Location is C:\Users\<USERNAME>\Documents\NeTrainSim where <USERNAME> should be replaced with the current session user name.

Collaborators

The development of NeTrainSim has been a collaborative effort. The following individuals have contributed to the development and maintenance of the simulator:

Contributors

Contributing

If you are interested in contributing to NeTrainSim, please read the CONTRIBUTING.md file for more information on how to get started.

License

This program is distributed under the terms of the GNU General Public License (GPL) version 3. Please see the LICENSE file for more information.

Publications

Aredah, A.S., Fadhloun, K. & Rakha, H.A. (2024) NeTrainSim: a network-level simulator for modeling freight train longitudinal motion and energy consumption. Railw. Eng. Sci. https://doi.org/10.1007/s40534-024-00331-x

Aredah, A., Fadhloun, K., & Rakha, H. A. (2024). Energy optimization in freight train operations: Algorithmic development and testing. Applied Energy, 364, 123111. https://doi.org/10.1016/j.apenergy.2024.123111

Aredah, A., Du, J., Hegazi, M., List, G., & Rakha, H. A. (2024). Comparative analysis of alternative powertrain technologies in freight trains: A numerical examination towards sustainable rail transport. Applied Energy, 356, 122411. https://doi.org/10.1016/j.apenergy.2023.122411